[2026-02-24 14:30:39] local.ERROR: SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: alter table `users` add unique `users_email_unique`(`email`)) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42000): SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: alter table `users` add unique `users_email_unique`(`email`)) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `us...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `us...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `us...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('users', Object(Closure))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/migrations/0001_01_01_000000_create_users_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('0001_01_01_0000...', Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '0001_01_01_0000...', Object(Closure))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Becky//...', 1, false)
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42000): SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('alter table `us...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `us...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `us...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `us...')
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('users', Object(Closure))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/migrations/0001_01_01_000000_create_users_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('0001_01_01_0000...', Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '0001_01_01_0000...', Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Becky//...', 1, false)
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-02-24 14:33:34] local.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `users` (`id` bigint unsigned not null auto_increment primary key, `name` varchar(191) not null, `email` varchar(191) not null, `email_verified_at` timestamp null, `password` varchar(191) not null, `remember_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `users` (`id` bigint unsigned not null auto_increment primary key, `name` varchar(191) not null, `email` varchar(191) not null, `email_verified_at` timestamp null, `password` varchar(191) not null, `remember_token` varchar(100) null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `u...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `u...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `u...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('users', Object(Closure))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/migrations/0001_01_01_000000_create_users_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('0001_01_01_0000...', Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '0001_01_01_0000...', Object(Closure))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Becky//...', 1, false)
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'users' already exists at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('create table `u...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `u...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `u...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `u...')
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('users', Object(Closure))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/migrations/0001_01_01_000000_create_users_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('0001_01_01_0000...', Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '0001_01_01_0000...', Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Becky//...', 1, false)
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-02-24 20:35:35] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: update `products` set `unit_id` = 2, `category_id` = ?, `products`.`updated_at` = 2026-02-24 20:35:35 where `id` = 2) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: update `products` set `unit_id` = 2, `category_id` = ?, `products`.`updated_at` = 2026-02-24 20:35:35 where `id` = 2) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('update `product...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate/Database/Connection->run('update `product...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(549): Illuminate/Database/Connection->affectingStatement('update `product...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4167): Illuminate/Database/Connection->update('update `product...', Array)
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1266): Illuminate/Database/Query/Builder->update(Object(Illuminate/Support/Collection))
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1316): Illuminate/Database/Eloquent/Builder->update(Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1233): Illuminate/Database/Eloquent/Model->performUpdate(Object(Illuminate/Database/Eloquent/Builder))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1090): Illuminate/Database/Eloquent/Model->save(Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/ProductController.php(101): Illuminate/Database/Eloquent/Model->update(Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/ProductController->update(Object(Illuminate/Http/Request), Object(App/Models/Product))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProductController), 'update')
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#60 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:609)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(609): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('update `product...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('update `product...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate/Database/Connection->run('update `product...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(549): Illuminate/Database/Connection->affectingStatement('update `product...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4167): Illuminate/Database/Connection->update('update `product...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1266): Illuminate/Database/Query/Builder->update(Object(Illuminate/Support/Collection))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1316): Illuminate/Database/Eloquent/Builder->update(Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1233): Illuminate/Database/Eloquent/Model->performUpdate(Object(Illuminate/Database/Eloquent/Builder))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1090): Illuminate/Database/Eloquent/Model->save(Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/ProductController.php(101): Illuminate/Database/Eloquent/Model->update(Array)
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/ProductController->update(Object(Illuminate/Http/Request), Object(App/Models/Product))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProductController), 'update')
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#62 {main}
"} 
[2026-02-24 21:58:24] local.ERROR: Route [pos.list] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\layouts\app.blade.php) (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\layouts\app.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.list] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\layouts\\app.blade.php) (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\layouts\\app.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Illuminate/View/ViewException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Illuminate\\View\\ViewException(code: 0): Route [pos.list] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\layouts\\app.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 2)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/4ff41d60ed14aa2c052ce28237164703.php(146): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#65 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.list] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.list', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/c39786b36f56e3468ddf2bf22d8db2dd.php(126): route('pos.list')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/4ff41d60ed14aa2c052ce28237164703.php(146): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#65 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#66 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#67 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#68 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#69 {main}
"} 
[2026-02-24 22:14:10] local.ERROR: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'description' in 'where clause' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select * from `brands` where (`name` = Novo Pharmaceuticals and `description` = Leading pharma company) limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'description' in 'where clause' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select * from `brands` where (`name` = Novo Pharmaceuticals and `description` = Leading pharma company) limit 1) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select * from `...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select * from `...', Array, true)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate/Database/Eloquent/Builder->get(Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(708): Illuminate/Database/Eloquent/Builder->first()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->firstOrCreate(Array)
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'firstOrCreate', Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('firstOrCreate', Array)
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/seeders/DatabaseSeeder.php(39): Illuminate/Database/Eloquent/Model::__callStatic('firstOrCreate', Array)
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate/Database/Eloquent/Model::withoutEvents(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database/Seeders/DatabaseSeeder->Illuminate/Database/Console/Seeds/{closure}()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#40 {main}

[previous exception] [object] (PDOException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'description' in 'where clause' at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select * from `...')
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select * from `...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select * from `...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select * from `...', Array, true)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate/Database/Eloquent/Builder->get(Array)
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(708): Illuminate/Database/Eloquent/Builder->first()
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->firstOrCreate(Array)
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'firstOrCreate', Array)
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('firstOrCreate', Array)
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/seeders/DatabaseSeeder.php(39): Illuminate/Database/Eloquent/Model::__callStatic('firstOrCreate', Array)
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate/Database/Eloquent/Model::withoutEvents(Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database/Seeders/DatabaseSeeder->Illuminate/Database/Console/Seeds/{closure}()
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#42 {main}
"} 
[2026-02-24 22:14:41] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users.users_email_unique' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `users` (`name`, `email`, `email_verified_at`, `password`, `remember_token`, `updated_at`, `created_at`) values (Test User, test@example.com, 2026-02-24 22:14:41, $2y$12$8tPMx9Ykx2HNcKre1l8Zc.mzFatOTHeSQgoEoaU2PhQAeOyvGKcmO, Ux7j15jDn1, 2026-02-24 22:14:41, 2026-02-24 22:14:41)) {"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users.users_email_unique' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `users` (`name`, `email`, `email_verified_at`, `password`, `remember_token`, `updated_at`, `created_at`) values (Test User, test@example.com, 2026-02-24 22:14:41, $2y$12$8tPMx9Ykx2HNcKre1l8Zc.mzFatOTHeSQgoEoaU2PhQAeOyvGKcmO, Ux7j15jDn1, 2026-02-24 22:14:41, 2026-02-24 22:14:41)) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `us...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `us...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `us...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `us...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(370): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(275): Illuminate/Database/Eloquent/Factories/Factory->Illuminate/Database/Eloquent/Factories/{closure}(Object(App/Models/User), 0)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(365): Illuminate/Support/Collection->each(Object(Closure))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(321): Illuminate/Database/Eloquent/Factories/Factory->store(Object(Illuminate/Support/Collection))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(315): Illuminate/Database/Eloquent/Factories/Factory->create(Array, NULL)
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/seeders/DatabaseSeeder.php(23): Illuminate/Database/Eloquent/Factories/Factory->create(Array)
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate/Database/Eloquent/Model::withoutEvents(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database/Seeders/DatabaseSeeder->Illuminate/Database/Console/Seeds/{closure}()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#40 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users.users_email_unique' at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `us...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `us...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `us...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `us...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `us...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(370): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(275): Illuminate/Database/Eloquent/Factories/Factory->Illuminate/Database/Eloquent/Factories/{closure}(Object(App/Models/User), 0)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(365): Illuminate/Support/Collection->each(Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(321): Illuminate/Database/Eloquent/Factories/Factory->store(Object(Illuminate/Support/Collection))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(315): Illuminate/Database/Eloquent/Factories/Factory->create(Array, NULL)
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/seeders/DatabaseSeeder.php(23): Illuminate/Database/Eloquent/Factories/Factory->create(Array)
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate/Database/Eloquent/Model::withoutEvents(Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database/Seeders/DatabaseSeeder->Illuminate/Database/Console/Seeds/{closure}()
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#42 {main}
"} 
[2026-02-24 22:19:27] local.ERROR: SQLSTATE[HY000]: General error: 1364 Field 'business_location' doesn't have a default value (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`sku`, `name`, `category_id`, `brand_id`, `unit_id`, `purchase_price`, `selling_price`, `current_stock`, `tax`, `description`, `updated_at`, `created_at`) values (PAR-500-PCS, Paracetamol 500mg, 9, 10, 2, 15, 25, 50, 16.5, Paracetamol 500mg tablets, 2026-02-24 22:19:27, 2026-02-24 22:19:27)) {"exception":"[object] (Illuminate\\Database\\QueryException(code: HY000): SQLSTATE[HY000]: General error: 1364 Field 'business_location' doesn't have a default value (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`sku`, `name`, `category_id`, `brand_id`, `unit_id`, `purchase_price`, `selling_price`, `current_stock`, `tax`, `description`, `updated_at`, `created_at`) values (PAR-500-PCS, Paracetamol 500mg, 9, 10, 2, 15, 25, 50, 16.5, Paracetamol 500mg tablets, 2026-02-24 22:19:27, 2026-02-24 22:19:27)) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pr...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pr...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pr...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Product))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Product), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(725): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1959): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(725): Illuminate/Database/Eloquent/Builder->withSavepointIfNeeded(Object(Closure))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(712): Illuminate/Database/Eloquent/Builder->createOrFirst(Array, Array)
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->firstOrCreate(Array, Array)
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'firstOrCreate', Array)
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('firstOrCreate', Array)
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/seeders/DatabaseSeeder.php(119): Illuminate/Database/Eloquent/Model::__callStatic('firstOrCreate', Array)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate/Database/Eloquent/Model::withoutEvents(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database/Seeders/DatabaseSeeder->Illuminate/Database/Console/Seeds/{closure}()
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#45 {main}

[previous exception] [object] (PDOException(code: HY000): SQLSTATE[HY000]: General error: 1364 Field 'business_location' doesn't have a default value at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `pr...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pr...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pr...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pr...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Product))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Product), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(725): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1959): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(725): Illuminate/Database/Eloquent/Builder->withSavepointIfNeeded(Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(712): Illuminate/Database/Eloquent/Builder->createOrFirst(Array, Array)
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->firstOrCreate(Array, Array)
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'firstOrCreate', Array)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('firstOrCreate', Array)
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/database/seeders/DatabaseSeeder.php(119): Illuminate/Database/Eloquent/Model::__callStatic('firstOrCreate', Array)
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate/Database/Eloquent/Model::withoutEvents(Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database/Seeders/DatabaseSeeder->Illuminate/Database/Console/Seeds/{closure}()
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#47 {main}
"} 
[2026-02-24 23:43:37] local.ERROR: syntax error, unexpected token "\" (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\list-pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): syntax error, unexpected token \"\\\" (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\list-pos.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/ce83c155ccec18ffcd707a8ce18e421f.php:51)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ParseError), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (ParseError(code: 0): syntax error, unexpected token \"\\\" at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/ce83c155ccec18ffcd707a8ce18e421f.php:51)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#58 {main}
"} 
[2026-02-25 07:33:48] local.ERROR: syntax error, unexpected single-quoted string "toDate", expecting "function" or "const" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"toDate\", expecting \"function\" or \"const\" at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php:172)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(211): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(148): Illuminate/Foundation/Console/RouteListCommand->getMiddleware(Object(Illuminate/Routing/Route))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(117): Illuminate/Foundation/Console/RouteListCommand->getRouteInformation(Object(Illuminate/Routing/Route))
#8 [internal function]: Illuminate/Foundation/Console/RouteListCommand->Illuminate/Foundation/Console/{closure}(Object(Illuminate/Routing/Route), 53)
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(840): array_map(Object(Closure), Array, Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(829): Illuminate/Support/Arr::map(Array, Object(Closure))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(117): Illuminate/Support/Collection->map(Object(Closure))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(102): Illuminate/Foundation/Console/RouteListCommand->getRoutes()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Foundation/Console/RouteListCommand->handle()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Foundation/Console/RouteListCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#27 {main}
"} 
[2026-02-25 07:42:47] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select count(*) as aggregate from `registers` where `opened_at` between 2026-02-01 00:00:00 and 2026-02-28 23:59:59) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select count(*) as aggregate from `registers` where `opened_at` between 2026-02-01 00:00:00 and 2026-02-28 23:59:59) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select count(*)...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select count(*)...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select count(*)...', Array, true)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3617): Illuminate/Database/Query/Builder->get()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3576): Illuminate/Database/Query/Builder->runPaginationCountQuery(Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1120): Illuminate/Database/Query/Builder->getCountForPagination()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php(51): Illuminate/Database/Eloquent/Builder->paginate(25)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select count(*)...')
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select count(*)...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select count(*)...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select count(*)...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select count(*)...', Array, true)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3617): Illuminate/Database/Query/Builder->get()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3576): Illuminate/Database/Query/Builder->runPaginationCountQuery(Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1120): Illuminate/Database/Query/Builder->getCountForPagination()
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php(51): Illuminate/Database/Eloquent/Builder->paginate(25)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#63 {main}
"} 
[2026-02-25 07:43:18] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select count(*) as aggregate from `registers` where `opened_at` between 2026-02-01 00:00:00 and 2026-02-28 23:59:59) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select count(*) as aggregate from `registers` where `opened_at` between 2026-02-01 00:00:00 and 2026-02-28 23:59:59) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select count(*)...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select count(*)...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select count(*)...', Array, true)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3617): Illuminate/Database/Query/Builder->get()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3576): Illuminate/Database/Query/Builder->runPaginationCountQuery(Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1120): Illuminate/Database/Query/Builder->getCountForPagination()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php(51): Illuminate/Database/Eloquent/Builder->paginate(25)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select count(*)...')
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select count(*)...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select count(*)...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select count(*)...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select count(*)...', Array, true)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3617): Illuminate/Database/Query/Builder->get()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3576): Illuminate/Database/Query/Builder->runPaginationCountQuery(Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1120): Illuminate/Database/Query/Builder->getCountForPagination()
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php(51): Illuminate/Database/Eloquent/Builder->paginate(25)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#63 {main}
"} 
[2026-02-25 07:43:21] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select count(*) as aggregate from `registers` where `opened_at` between 2026-02-01 00:00:00 and 2026-02-28 23:59:59) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select count(*) as aggregate from `registers` where `opened_at` between 2026-02-01 00:00:00 and 2026-02-28 23:59:59) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select count(*)...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select count(*)...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select count(*)...', Array, true)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3617): Illuminate/Database/Query/Builder->get()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3576): Illuminate/Database/Query/Builder->runPaginationCountQuery(Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1120): Illuminate/Database/Query/Builder->getCountForPagination()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php(51): Illuminate/Database/Eloquent/Builder->paginate(25)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'pharmacy_pos.registers' doesn't exist at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select count(*)...')
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select count(*)...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select count(*)...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select count(*)...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select count(*)...', Array, true)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3617): Illuminate/Database/Query/Builder->get()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3576): Illuminate/Database/Query/Builder->runPaginationCountQuery(Array)
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1120): Illuminate/Database/Query/Builder->getCountForPagination()
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php(51): Illuminate/Database/Eloquent/Builder->paginate(25)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#63 {main}
"} 
[2026-02-25 08:39:03] local.ERROR: Class "App\Models\Location" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Models\\Location\" not found at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/RegisterReportController.php:81)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#51 {main}
"} 
[2026-02-25 10:15:01] local.ERROR: Call to undefined function App\Http\Controllers\getOpenRegister() {"userId":1,"exception":"[object] (Error(code: 0): Call to undefined function App\\Http\\Controllers\\getOpenRegister() at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/app/Http/Controllers/POSController.php:25)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/POSController->create()
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'create')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#51 {main}
"} 
[2026-02-25 12:30:39] local.ERROR: Route [register.store] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\register\open.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [register.store] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\register\\open.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [register.store] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('register.store', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/c71de5c08431582158a7d224b56293b6.php(25): route('register.store')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-25 12:37:46] local.ERROR: Route [register.store] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\register\open.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [register.store] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\register\\open.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [register.store] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('register.store', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/c71de5c08431582158a7d224b56293b6.php(25): route('register.store')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-25 12:38:25] local.ERROR: Route [register.store] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\register\open.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [register.store] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\register\\open.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [register.store] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('register.store', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/c71de5c08431582158a7d224b56293b6.php(25): route('register.store')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-25 12:39:10] local.ERROR: Route [register.store] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\register\open.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [register.store] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\register\\open.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [register.store] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('register.store', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/c71de5c08431582158a7d224b56293b6.php(25): route('register.store')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-25 12:42:45] local.ERROR: Route [pos.register.open] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.register.open] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\pos.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.register.open] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.register.op...', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/b8220b84fffef5649d725e5df39673fc.php(263): route('pos.register.op...')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-25 12:44:13] local.ERROR: Route [pos.register.open] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.register.open] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\pos.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.register.open] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.register.op...', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/b8220b84fffef5649d725e5df39673fc.php(263): route('pos.register.op...')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-25 12:44:50] local.ERROR: Route [pos.register.open] not defined. (View: C:\Users\Becky\Desktop\projects\pharmacy-pos-template\backend\resources\views\pos\pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.register.open] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\pharmacy-pos-template\\backend\\resources\\views\\pos\\pos.blade.php) at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.register.open] not defined. at C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.register.op...', Array, true)
#1 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/storage/framework/views/b8220b84fffef5649d725e5df39673fc.php(263): route('pos.register.op...')
#2 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/pharmacy-pos-template/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-26 06:21:54] local.ERROR: Route [pos.cart.update] not defined. (View: C:\Users\Becky\Desktop\projects\backend\resources\views\pos\pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.cart.update] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\pos\\pos.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.cart.update] not defined. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.cart.update', Array, true)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/477ed437d900355e2175c8117eb05900.php(749): route('pos.cart.update')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-26 07:16:07] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 07:16:31] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 07:17:03] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 07:17:16] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 07:19:07] local.ERROR: Route [stock-report.export.csv] not defined. (View: C:\Users\Becky\Desktop\projects\backend\resources\views\pos\stock-report.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [stock-report.export.csv] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\pos\\stock-report.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [stock-report.export.csv] not defined. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('stock-report.ex...', Array, true)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/1654d112812137918b57254dc31b11ca.php(30): route('stock-report.ex...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-02-26 07:27:13] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 07:31:22] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 08:54:50] local.ERROR: Target class [RegisterReportController] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [RegisterReportController] does not exist. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#55 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"RegisterReportController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct('RegisterReportC...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('RegisterReportC...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('RegisterReportC...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('RegisterReportC...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('RegisterReportC...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('RegisterReportC...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#56 {main}
"} 
[2026-02-26 10:18:00] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_export_buttons, View export to buttons (csv/excel/print/pdf) on tables, Others, 2026-02-26 10:17:57, 2026-02-26 10:17:57)) {"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_export_buttons, View export to buttons (csv/excel/print/pdf) on tables, Others, 2026-02-26 10:17:57, 2026-02-26 10:17:57)) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pe...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pe...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pe...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pe...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Permission))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Permission), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#14 C:/Users/Becky/Desktop/projects/backend/database/seeders/PermissionSeeder.php(201): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/PermissionSeeder->run()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#31 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#39 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `pe...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pe...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pe...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pe...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pe...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Permission))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Permission), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#16 C:/Users/Becky/Desktop/projects/backend/database/seeders/PermissionSeeder.php(201): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/PermissionSeeder->run()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#41 {main}
"} 
[2026-02-26 10:18:31] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting T_VARIABLE on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting T_VARIABLE on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php App//Model...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('App//Models//User...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('App//Models//User...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('App//Models//User...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-02-26 10:18:40] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting T_VARIABLE on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting T_VARIABLE on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php App//Model...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('App//Models//User...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('App//Models//User...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('App//Models//User...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-02-26 10:40:53] local.ERROR: Call to undefined function str_slug() (View: C:\Users\Becky\Desktop\projects\backend\resources\views\admin\roles\edit.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Call to undefined function str_slug() (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\admin\\roles\\edit.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/0268f7d07141b1f07969ad583adb9f24.php:50)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Error), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Error(code: 0): Call to undefined function str_slug() at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/0268f7d07141b1f07969ad583adb9f24.php:50)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#59 {main}
"} 
[2026-02-26 11:13:37] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_export_buttons, View export to buttons (csv/excel/print/pdf) on tables, Others, 2026-02-26 11:13:37, 2026-02-26 11:13:37)) {"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_export_buttons, View export to buttons (csv/excel/print/pdf) on tables, Others, 2026-02-26 11:13:37, 2026-02-26 11:13:37)) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pe...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pe...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pe...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pe...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Permission))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Permission), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#14 C:/Users/Becky/Desktop/projects/backend/database/seeders/PermissionSeeder.php(202): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/PermissionSeeder->run()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#31 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#39 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `pe...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pe...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pe...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pe...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pe...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Permission))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Permission), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#16 C:/Users/Becky/Desktop/projects/backend/database/seeders/PermissionSeeder.php(202): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/PermissionSeeder->run()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#41 {main}
"} 
[2026-02-26 11:14:28] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php // = App//M...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('// = App//Models//...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('// = App//Models//...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('// = App//Models//...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-02-26 11:36:28] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting T_VARIABLE on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting T_VARIABLE on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php echo 'Rec...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('echo 'Recent pu...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('echo 'Recent pu...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('echo 'Recent pu...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-02-26 11:39:01] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php echo 'Tes...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('echo 'Testing e...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('echo 'Testing e...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('echo 'Testing e...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-02-26 11:42:18] local.ERROR: Call to undefined function formatCurrency() (View: C:\Users\Becky\Desktop\projects\backend\resources\views\reports\stock-expiry.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Call to undefined function formatCurrency() (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\reports\\stock-expiry.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/b76aaa285bfe19c99477113a3e2349fb.php:144)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Error), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Error(code: 0): Call to undefined function formatCurrency() at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/b76aaa285bfe19c99477113a3e2349fb.php:144)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#59 {main}
"} 
[2026-02-26 12:13:07] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php echo 'Tes...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('echo 'Testing p...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('echo 'Testing p...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('echo 'Testing p...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-02-26 12:55:39] local.ERROR: Illuminate\Routing\RouteCollection::match(): Argument #1 ($request) must be of type Illuminate\Http\Request, string given, called in C:\Users\Becky\Desktop\projects\backend\test_api_direct.php on line 15 {"exception":"[object] (TypeError(code: 0): Illuminate\\Routing\\RouteCollection::match(): Argument #1 ($request) must be of type Illuminate\\Http\\Request, string given, called in C:\\Users\\Becky\\Desktop\\projects\\backend\\test_api_direct.php on line 15 at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php:175)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/test_api_direct.php(15): Illuminate/Routing/RouteCollection->match('GET', '/products/2/sto...')
#1 {main}
"} 
[2026-02-26 18:43:09] local.ERROR: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'return_type' in 'where clause' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select sum(`total_amount`) as aggregate from `sales` where `return_type` = sell_return and date(`created_at`) = 2026-02-26) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'return_type' in 'where clause' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select sum(`total_amount`) as aggregate from `sales` where `return_type` = sell_return and date(`created_at`) = 2026-02-26) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select sum(`tot...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select sum(`tot...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select sum(`tot...', Array, true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3937): Illuminate/Database/Query/Builder->get(Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3898): Illuminate/Database/Query/Builder->aggregate('sum', Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->sum('total_amount')
#9 C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/DashboardController.php(24): Illuminate/Database/Eloquent/Builder->__call('sum', Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/DashboardController->index()
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/DashboardController), 'index')
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}

[previous exception] [object] (PDOException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'return_type' in 'where clause' at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select sum(`tot...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select sum(`tot...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select sum(`tot...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select sum(`tot...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select sum(`tot...', Array, true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3937): Illuminate/Database/Query/Builder->get(Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3898): Illuminate/Database/Query/Builder->aggregate('sum', Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->sum('total_amount')
#11 C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/DashboardController.php(24): Illuminate/Database/Eloquent/Builder->__call('sum', Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/DashboardController->index()
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/DashboardController), 'index')
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#63 {main}
"} 
[2026-02-26 18:45:57] local.ERROR: Cannot end a section without first starting one. (View: C:\Users\Becky\Desktop\projects\backend\resources\views\pos\dashboard.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\pos\\dashboard.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/7d975dafe343a09dad8f836a2544a4dc.php(315): Illuminate/View/Factory->stopSection()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#60 {main}
"} 
[2026-02-26 19:30:52] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'brand_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `description`, `business_location`, `product_type`, `current_stock`, `updated_at`, `created_at`) values (Iron, 11, 3, ?, 2000.00, 4000.00, PRD-00015, 5.00, pain killer, EDUC Pharmacy (BL0001), Single, 0, 2026-02-26 19:30:52, 2026-02-26 19:30:52)) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'brand_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `description`, `business_location`, `product_type`, `current_stock`, `updated_at`, `created_at`) values (Iron, 11, 3, ?, 2000.00, 4000.00, PRD-00015, 5.00, pain killer, EDUC Pharmacy (BL0001), Single, 0, 2026-02-26 19:30:52, 2026-02-26 19:30:52)) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pr...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pr...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pr...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Product))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Product), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#14 C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/ProductController.php(61): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/ProductController->store(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProductController), 'store')
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#63 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#65 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#66 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'brand_id' cannot be null at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `pr...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pr...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pr...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pr...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Product))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Product), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#16 C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/ProductController.php(61): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/ProductController->store(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProductController), 'store')
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#64 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#65 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#66 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#67 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#68 {main}
"} 
[2026-02-26 19:59:41] local.ERROR: Call to a member function format() on string (View: C:\Users\Becky\Desktop\projects\backend\resources\views\purchases\edit.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Call to a member function format() on string (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\purchases\\edit.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/3a14800cee5542bb038df4d71fc12039.php:101)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Error), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Error(code: 0): Call to a member function format() on string at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/3a14800cee5542bb038df4d71fc12039.php:101)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#59 {main}
"} 
[2026-02-27 19:19:12] local.ERROR: Cannot access offset of type string on string (View: C:\Users\Becky\Desktop\projects\backend\resources\views\pos\sale-show.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot access offset of type string on string (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\pos\\sale-show.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/a8342e087ea6af5095e65336bcf7922f.php:41)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(TypeError), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (TypeError(code: 0): Cannot access offset of type string on string at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/a8342e087ea6af5095e65336bcf7922f.php:41)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#59 {main}
"} 
[2026-03-02 22:06:00] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:08:48] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:09:07] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:14:44] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:15:00] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:15:01] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:15:28] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:16:47] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:19:23] local.ERROR: syntax error, unexpected single-quoted string "quantity_change", expecting "]" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected single-quoted string \"quantity_change\", expecting \"]\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:285)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:34:55] local.ERROR: syntax error, unexpected token "catch" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected token \"catch\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:303)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:36:26] local.ERROR: syntax error, unexpected token "catch" {"exception":"[object] (ParseError(code: 0): syntax error, unexpected token \"catch\" at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:306)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('C://Users//Becky//...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#35 {main}
"} 
[2026-03-02 22:38:34] local.ERROR: Class "App\Models\Payment" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Models\\Payment\" not found at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:200)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#51 {main}
"} 
[2026-03-02 22:38:38] local.ERROR: Class "App\Models\Payment" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Models\\Payment\" not found at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:200)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#51 {main}
"} 
[2026-03-02 22:39:20] local.ERROR: Class "App\Models\Payment" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Models\\Payment\" not found at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:200)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#51 {main}
"} 
[2026-03-02 22:40:31] local.ERROR: Class "App\Models\Payment" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Models\\Payment\" not found at C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/POSController.php:200)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#51 {main}
"} 
[2026-03-03 10:47:03] local.ERROR: Route [contacts.create] not defined. (View: C:\Users\Becky\Desktop\projects\backend\resources\views\pos\add-product.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [contacts.create] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\pos\\add-product.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [contacts.create] not defined. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('contacts.create', Array, true)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/3d6f8585b21cc0d1f43415cc7000482d.php(226): route('contacts.create', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-03-05 22:52:38] local.ERROR: Route [activity-log.index] not defined. (View: C:\Users\Becky\Desktop\projects\backend\resources\views\layouts\app.blade.php) (View: C:\Users\Becky\Desktop\projects\backend\resources\views\layouts\app.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [activity-log.index] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\layouts\\app.blade.php) (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\layouts\\app.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Illuminate/View/ViewException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Illuminate\\View\\ViewException(code: 0): Route [activity-log.index] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\layouts\\app.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 2)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/1654d112812137918b57254dc31b11ca.php(76): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#65 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [activity-log.index] not defined. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('activity-log.in...', Array, true)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/b5fb94ac26333da6519595d6a747eb4f.php(233): route('activity-log.in...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/1654d112812137918b57254dc31b11ca.php(76): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#65 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#66 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#67 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#68 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#69 {main}
"} 
[2026-03-05 22:52:44] local.ERROR: Route [activity-log.index] not defined. (View: C:\Users\Becky\Desktop\projects\backend\resources\views\layouts\app.blade.php) (View: C:\Users\Becky\Desktop\projects\backend\resources\views\layouts\app.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [activity-log.index] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\layouts\\app.blade.php) (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\layouts\\app.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Illuminate/View/ViewException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (Illuminate\\View\\ViewException(code: 0): Route [activity-log.index] not defined. (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\layouts\\app.blade.php) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 2)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/1654d112812137918b57254dc31b11ca.php(76): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#65 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [activity-log.index] not defined. at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('activity-log.in...', Array, true)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/b5fb94ac26333da6519595d6a747eb4f.php(233): route('activity-log.in...')
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/1654d112812137918b57254dc31b11ca.php(76): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#65 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#66 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#67 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#68 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#69 {main}
"} 
[2026-03-05 22:57:22] local.ERROR: Undefined variable $request (View: C:\Users\Becky\Desktop\projects\backend\resources\views\activity-log\index.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined variable $request (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\activity-log\\index.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php:12)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Undefined variable $request at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php:12)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined varia...', 'C://Users//Becky//...', 12)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php(12): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined varia...', 'C://Users//Becky//...', 12)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-03-05 22:57:25] local.ERROR: Undefined variable $request (View: C:\Users\Becky\Desktop\projects\backend\resources\views\activity-log\index.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined variable $request (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\activity-log\\index.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php:12)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Undefined variable $request at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php:12)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined varia...', 'C://Users//Becky//...', 12)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php(12): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined varia...', 'C://Users//Becky//...', 12)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-03-05 22:57:26] local.ERROR: Undefined variable $request (View: C:\Users\Becky\Desktop\projects\backend\resources\views\activity-log\index.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined variable $request (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\activity-log\\index.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php:12)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Undefined variable $request at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php:12)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined varia...', 'C://Users//Becky//...', 12)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2b55f3ce132f7ac555e92a27f714283e.php(12): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined varia...', 'C://Users//Becky//...', 12)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-03-05 23:03:16] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 2 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 2 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php /n// = App//...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('/n// = App//Models...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('/n// = App//Models...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/n// = App//Models...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-03-05 23:07:16] local.ERROR: Class "SalesSummaryController" does not exist {"exception":"[object] (ReflectionException(code: -1): Class \"SalesSummaryController\" does not exist at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:235)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(235): ReflectionClass->__construct('SalesSummaryCon...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(149): Illuminate/Foundation/Console/RouteListCommand->isVendorRoute(Object(Illuminate/Routing/Route))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(117): Illuminate/Foundation/Console/RouteListCommand->getRouteInformation(Object(Illuminate/Routing/Route))
#3 [internal function]: Illuminate/Foundation/Console/RouteListCommand->Illuminate/Foundation/Console/{closure}(Object(Illuminate/Routing/Route), 63)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Collections/Arr.php(840): array_map(Object(Closure), Array, Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Collections/Collection.php(829): Illuminate/Support/Arr::map(Array, Object(Closure))
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(117): Illuminate/Support/Collection->map(Object(Closure))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php(102): Illuminate/Foundation/Console/RouteListCommand->getRoutes()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Foundation/Console/RouteListCommand->handle()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Foundation/Console/RouteListCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#21 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#22 {main}
"} 
[2026-03-05 23:08:56] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 2 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 2 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php /n// = App//...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('/n// = App//Models...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('/n// = App//Models...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/n// = App//Models...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-03-06 11:21:30] local.ERROR: SQLSTATE[HY000]: General error: 1364 Field 'business_location' doesn't have a default value (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`name`, `sku`, `description`, `purchase_price`, `selling_price`, `current_stock`, `category_id`, `brand_id`, `expiry_date`, `created_at`, `updated_at`) values (Paracetamol 500mg Tablets, PAR001, Pain relief medication for headaches, fever, and mild pain, 2.5, 4.5, 150, 1, 1, 2028-03-06 11:21:27, 2026-03-06 11:21:27, 2026-03-06 11:21:27)) {"exception":"[object] (Illuminate\\Database\\QueryException(code: HY000): SQLSTATE[HY000]: General error: 1364 Field 'business_location' doesn't have a default value (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`name`, `sku`, `description`, `purchase_price`, `selling_price`, `current_stock`, `category_id`, `brand_id`, `expiry_date`, `created_at`, `updated_at`) values (Paracetamol 500mg Tablets, PAR001, Pain relief medication for headaches, fever, and mild pain, 2.5, 4.5, 150, 1, 1, 2028-03-06 11:21:27, 2026-03-06 11:21:27, 2026-03-06 11:21:27)) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pr...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pr...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pr...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Product))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Product), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#14 C:/Users/Becky/Desktop/projects/backend/database/seeders/ProductSeeder.php(301): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/ProductSeeder->run()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#31 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#39 {main}

[previous exception] [object] (PDOException(code: HY000): SQLSTATE[HY000]: General error: 1364 Field 'business_location' doesn't have a default value at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `pr...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pr...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pr...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pr...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Product))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Product), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#16 C:/Users/Becky/Desktop/projects/backend/database/seeders/ProductSeeder.php(301): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/ProductSeeder->run()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#41 {main}
"} 
[2026-03-06 11:23:06] local.ERROR: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'field list' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `locations` (`name`, `address`, `phone`, `email`, `created_at`, `updated_at`) values (Main Store, 123 Main Street, City Center, +265 123 456 789, main@pharmacy.com, 2026-03-06 11:23:06, 2026-03-06 11:23:06)) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'field list' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `locations` (`name`, `address`, `phone`, `email`, `created_at`, `updated_at`) values (Main Store, 123 Main Street, City Center, +265 123 456 789, main@pharmacy.com, 2026-03-06 11:23:06, 2026-03-06 11:23:06)) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `lo...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `lo...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `lo...', Array, 'id')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `lo...', Array, 'id')
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Location))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Location), Object(Closure))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#14 C:/Users/Becky/Desktop/projects/backend/database/seeders/LocationSeeder.php(36): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/LocationSeeder->run()
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#31 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#39 {main}

[previous exception] [object] (PDOException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'field list' at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:47)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(47): PDO->prepare('insert into `lo...')
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `lo...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `lo...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `lo...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `lo...', Array, 'id')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `lo...', Array, 'id')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Location))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Location), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#16 C:/Users/Becky/Desktop/projects/backend/database/seeders/LocationSeeder.php(36): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/LocationSeeder->run()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#33 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#40 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#41 {main}
"} 
[2026-03-06 11:25:45] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php echo 'Fir...', false)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('echo 'First 5 p...', true)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('echo 'First 5 p...', true)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('echo 'First 5 p...')
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-03-07 06:06:19] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"92.00","previous_selling_price":"10.50","validated_data":{"product_id":"19","adjustment_type":"add","quantity":"5","reason":"ggg","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-03-07"}} 
[2026-03-07 06:06:19] local.INFO: Stock Adjustment - After Quantity Save {"product_id":19,"new_quantity":97.0,"current_stock":97.0,"changes_made":"Quantity adjusted"} 
[2026-03-07 06:06:21] local.ERROR: Attempt to read property "name" on null (View: C:\Users\Becky\Desktop\projects\backend\resources\views\stock-adjustments\index.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Attempt to read property \"name\" on null (View: C:\\Users\\Becky\\Desktop\\projects\\backend\\resources\\views\\stock-adjustments\\index.blade.php) at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2e6724dbff4ea8487b99f18463a827da.php:36)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Attempt to read property \"name\" on null at C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2e6724dbff4ea8487b99f18463a827da.php:36)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Attempt to read...', 'C://Users//Becky//...', 36)
#1 C:/Users/Becky/Desktop/projects/backend/storage/framework/views/2e6724dbff4ea8487b99f18463a827da.php(36): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Attempt to read...', 'C://Users//Becky//...', 36)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('C://Users//Becky//...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Becky//...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Becky//...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Becky//...', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#61 {main}
"} 
[2026-03-07 06:12:15] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"97.00","previous_selling_price":"10.50","validated_data":{"product_id":"19","adjustment_type":"add","quantity":"2","reason":",,","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-03-07"}} 
[2026-03-07 06:12:15] local.INFO: Stock Adjustment - After Quantity Save {"product_id":19,"new_quantity":99.0,"current_stock":99.0,"changes_made":"Quantity adjusted"} 
[2026-03-07 06:12:42] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"99.00","previous_selling_price":"10.50","validated_data":{"product_id":"19","adjustment_type":"add","quantity":null,"reason":"hhh","new_selling_price":"5000.00","new_purchase_price":null,"new_expiry_date":"2026-03-07"}} 
[2026-03-07 06:12:42] local.INFO: Stock Adjustment - After Price-Only Save {"product_id":19,"new_selling_price":"5000.00","current_stock":"99.00","changes_made":"Prices updated only"} 
[2026-03-07 06:17:10] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"99.00","previous_selling_price":"5000.00","validated_data":{"product_id":"19","adjustment_type":"subtract","quantity":"5","reason":"yy","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-03-07"}} 
[2026-03-07 06:17:10] local.INFO: Stock Adjustment - After Quantity Save {"product_id":19,"new_quantity":94.0,"current_stock":94.0,"changes_made":"Quantity adjusted"} 
[2026-03-07 06:27:12] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"Banana plantain","sku":null,"purchase_price":null,"unit_id":"12","brand_id":null,"category_id":null,"supplier_id":null,"selling_price":"6000.00","alert_quantity":null,"expiry_date":null,"purchase_quantity":"6.00","purchase_date":"2026-03-07","reference_no":"PUR-20260307-338","description":null},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-03-07 06:27:23] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"Banana plantain","sku":null,"purchase_price":"8.00","unit_id":"12","brand_id":null,"category_id":null,"supplier_id":null,"selling_price":"6000.00","alert_quantity":null,"expiry_date":null,"purchase_quantity":"0","purchase_date":"2026-03-07","reference_no":"PUR-20260307-317","description":null},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-03-07 06:27:23] local.INFO: Product Store - Validation Success {"validated_data":{"name":"Banana plantain","unit_id":"12","category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"8.00","selling_price":"6000.00","sku":null,"alert_quantity":null,"expiry_date":null,"description":null,"purchase_quantity":"0","purchase_date":"2026-03-07","reference_no":"PUR-20260307-317"},"category_id_value":"null","brand_id_value":"null"} 
[2026-03-07 06:31:10] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"Mona Vang","sku":"Eum omnis eos amet","purchase_price":"269.00","unit_id":"13","brand_id":null,"category_id":null,"supplier_id":"3","selling_price":"232.00","alert_quantity":"220.00","expiry_date":"2001-08-31","purchase_quantity":"189.00","purchase_date":"2014-10-18","reference_no":"PUR-20260307-120","description":"Voluptate explicabo"},"category_id":null,"brand_id":null,"supplier_id":"3"} 
[2026-03-07 06:31:10] local.INFO: Product Store - Validation Success {"validated_data":{"name":"Mona Vang","unit_id":"13","category_id":null,"brand_id":null,"supplier_id":"3","purchase_price":"269.00","selling_price":"232.00","sku":"Eum omnis eos amet","alert_quantity":"220.00","expiry_date":"2001-08-31","description":"Voluptate explicabo","purchase_quantity":"189.00","purchase_date":"2014-10-18","reference_no":"PUR-20260307-120"},"category_id_value":"null","brand_id_value":"null"} 
[2026-03-07 06:31:11] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Mona Vang","unit_id":"13","category_id":null,"brand_id":null,"supplier_id":"3","purchase_price":"269.00","selling_price":"232.00","sku":"Eum omnis eos amet","alert_quantity":"220.00","expiry_date":"2001-08-31","description":"Voluptate explicabo","purchase_quantity":"189.00","purchase_date":"2014-10-18","reference_no":"PUR-20260307-120","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"189.00","last_purchase_price":"269.00","last_purchase_date":"2014-10-18"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-03-07 06:31:11] local.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `supplier_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `expiry_date`, `description`, `business_location`, `product_type`, `current_stock`, `last_purchase_price`, `last_purchase_date`, `updated_at`, `created_at`) values (Mona Vang, 13, ?, ?, 3, 269.00, 232.00, Eum omnis eos amet, 220.00, 2001-08-31, Voluptate explicabo, EDUC Pharmacy (BL0001), Single, 189.00, 269.00, 2014-10-18, 2026-03-07 06:31:11, 2026-03-07 06:31:11))","error_code":"23000","error_file":"C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php","error_line":838,"error_trace":"#0 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback('insert into `pr...', Array, Object(Closure))
#1 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\MySqlConnection.php(42): Illuminate\\Database\\Connection->run('insert into `pr...', Array, Object(Closure))
#2 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Processors\\MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert('insert into `pr...', Array, 'id')
#3 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId(Object(Illuminate\\Database\\Query\\Builder), 'insert into `pr...', Array, 'id')
#4 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId(Array, 'id')
#5 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call('insertGetId', Array)
#6 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId(Object(Illuminate\\Database\\Eloquent\\Builder), Array)
#7 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert(Object(Illuminate\\Database\\Eloquent\\Builder))
#8 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}(Object(App\\Models\\Product))
#10 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1218): tap(Object(App\\Models\\Product), Object(Closure))
#11 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\Traits\\ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create(Array)
#12 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo(Object(Illuminate\\Database\\Eloquent\\Builder), 'create', Array)
#13 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call('create', Array)
#14 C:\\Users\\Becky\\Desktop\\projects\\backend\\app\\Http\\Controllers\\ProductController.php(144): Illuminate\\Database\\Eloquent\\Model::__callStatic('create', Array)
#15 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(46): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#16 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#17 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#18 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#19 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#20 C:\\Users\\Becky\\Desktop\\projects\\backend\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#22 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#32 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#33 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#34 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#39 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#40 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#41 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#42 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#43 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#44 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#64 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#65 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#66 C:\\Users\\Becky\\Desktop\\projects\\backend\\public\\index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#67 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\resources\\server.php(23): require_once('C:\\\\Users\\\\Becky\\\\...')
#68 {main}"} 
[2026-03-07 06:36:23] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"DICLOFENAC,","sku":null,"purchase_price":"300.00","unit_id":"13","brand_id":"1","category_id":"1","supplier_id":null,"selling_price":"600.00","alert_quantity":"2.00","expiry_date":"2026-03-20","purchase_quantity":"6.00","purchase_date":"2026-03-07","reference_no":"PUR-20260307-143","description":null},"category_id":"1","brand_id":"1","supplier_id":null} 
[2026-03-07 06:36:23] local.INFO: Product Store - Validation Success {"validated_data":{"name":"DICLOFENAC,","unit_id":"13","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"300.00","selling_price":"600.00","sku":null,"alert_quantity":"2.00","expiry_date":"2026-03-20","description":null,"purchase_quantity":"6.00","purchase_date":"2026-03-07","reference_no":"PUR-20260307-143"},"category_id_value":"1","brand_id_value":"1"} 
[2026-03-07 06:36:23] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"DICLOFENAC,","unit_id":"13","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"300.00","selling_price":"600.00","sku":"PRD-00029","alert_quantity":"2.00","expiry_date":"2026-03-20","description":null,"purchase_quantity":"6.00","purchase_date":"2026-03-07","reference_no":"PUR-20260307-143","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"6.00","last_purchase_price":"300.00","last_purchase_date":"2026-03-07"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-03-07 06:36:23] local.INFO: Product Store - Product Created {"product_id":29,"product_name":"DICLOFENAC,","product_sku":"PRD-00029"} 
[2026-03-07 06:36:23] local.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'supplier_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `purchases` (`supplier_id`, `business_location`, `reference_no`, `purchase_date`, `status`, `payment_status`, `grand_total`, `created_by`, `updated_at`, `created_at`) values (?, EDUC Pharmacy (BL0001), PUR-20260307-143, 2026-03-07, received, due, 1800, 1, 2026-03-07 06:36:23, 2026-03-07 06:36:23))","error_code":"23000","error_file":"C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php","error_line":838,"error_trace":"#0 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback('insert into `pu...', Array, Object(Closure))
#1 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\MySqlConnection.php(42): Illuminate\\Database\\Connection->run('insert into `pu...', Array, Object(Closure))
#2 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Processors\\MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert('insert into `pu...', Array, 'id')
#3 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId(Object(Illuminate\\Database\\Query\\Builder), 'insert into `pu...', Array, 'id')
#4 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId(Array, 'id')
#5 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call('insertGetId', Array)
#6 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId(Object(Illuminate\\Database\\Eloquent\\Builder), Array)
#7 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert(Object(Illuminate\\Database\\Eloquent\\Builder))
#8 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}(Object(App\\Models\\Purchase))
#10 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1218): tap(Object(App\\Models\\Purchase), Object(Closure))
#11 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\Traits\\ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create(Array)
#12 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo(Object(Illuminate\\Database\\Eloquent\\Builder), 'create', Array)
#13 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call('create', Array)
#14 C:\\Users\\Becky\\Desktop\\projects\\backend\\app\\Http\\Controllers\\ProductController.php(163): Illuminate\\Database\\Eloquent\\Model::__callStatic('create', Array)
#15 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(46): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#16 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#17 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#18 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#19 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#20 C:\\Users\\Becky\\Desktop\\projects\\backend\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#22 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#32 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#33 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#34 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#39 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#40 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#41 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#42 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#43 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#44 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#64 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#65 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#66 C:\\Users\\Becky\\Desktop\\projects\\backend\\public\\index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#67 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\resources\\server.php(23): require_once('C:\\\\Users\\\\Becky\\\\...')
#68 {main}"} 
[2026-03-07 06:36:47] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"DICLOFENAC,","sku":null,"purchase_price":"300.00","unit_id":"13","brand_id":"1","category_id":"1","supplier_id":"1","selling_price":"600.00","alert_quantity":"2.00","expiry_date":"2026-03-20","purchase_quantity":"0","purchase_date":"2026-03-07","reference_no":"PUR-20260307-329","description":null},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-03-07 06:36:47] local.INFO: Product Store - Validation Success {"validated_data":{"name":"DICLOFENAC,","unit_id":"13","category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"300.00","selling_price":"600.00","sku":null,"alert_quantity":"2.00","expiry_date":"2026-03-20","description":null,"purchase_quantity":"0","purchase_date":"2026-03-07","reference_no":"PUR-20260307-329"},"category_id_value":"1","brand_id_value":"1"} 
[2026-03-07 06:36:47] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"DICLOFENAC,","unit_id":"13","category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"300.00","selling_price":"600.00","sku":"PRD-00030","alert_quantity":"2.00","expiry_date":"2026-03-20","description":null,"purchase_quantity":"0","purchase_date":"2026-03-07","reference_no":"PUR-20260307-329","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"0","last_purchase_price":"300.00","last_purchase_date":"2026-03-07"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-03-07 06:36:47] local.INFO: Product Store - Product Created {"product_id":30,"product_name":"DICLOFENAC,","product_sku":"PRD-00030"} 
[2026-03-07 06:37:16] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"Lara Workman","sku":"Est fugiat dolores","purchase_price":"42.00","unit_id":"9","brand_id":"3","category_id":"4","supplier_id":null,"selling_price":"724.00","alert_quantity":"131.00","expiry_date":"1987-10-03","purchase_quantity":"902.00","purchase_date":"2021-11-28","reference_no":"PUR-20260307-067","description":"Ea sint sint quis i"},"category_id":"4","brand_id":"3","supplier_id":null} 
[2026-03-07 06:37:16] local.INFO: Product Store - Validation Success {"validated_data":{"name":"Lara Workman","unit_id":"9","category_id":"4","brand_id":"3","supplier_id":null,"purchase_price":"42.00","selling_price":"724.00","sku":"Est fugiat dolores","alert_quantity":"131.00","expiry_date":"1987-10-03","description":"Ea sint sint quis i","purchase_quantity":"902.00","purchase_date":"2021-11-28","reference_no":"PUR-20260307-067"},"category_id_value":"4","brand_id_value":"3"} 
[2026-03-07 06:37:16] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Lara Workman","unit_id":"9","category_id":"4","brand_id":"3","supplier_id":null,"purchase_price":"42.00","selling_price":"724.00","sku":"Est fugiat dolores","alert_quantity":"131.00","expiry_date":"1987-10-03","description":"Ea sint sint quis i","purchase_quantity":"902.00","purchase_date":"2021-11-28","reference_no":"PUR-20260307-067","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"902.00","last_purchase_price":"42.00","last_purchase_date":"2021-11-28"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-03-07 06:37:16] local.INFO: Product Store - Product Created {"product_id":31,"product_name":"Lara Workman","product_sku":"Est fugiat dolores"} 
[2026-03-07 06:37:16] local.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'supplier_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `purchases` (`supplier_id`, `business_location`, `reference_no`, `purchase_date`, `status`, `payment_status`, `grand_total`, `created_by`, `updated_at`, `created_at`) values (?, EDUC Pharmacy (BL0001), PUR-20260307-067, 2021-11-28, received, due, 37884, 1, 2026-03-07 06:37:16, 2026-03-07 06:37:16))","error_code":"23000","error_file":"C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php","error_line":838,"error_trace":"#0 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback('insert into `pu...', Array, Object(Closure))
#1 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\MySqlConnection.php(42): Illuminate\\Database\\Connection->run('insert into `pu...', Array, Object(Closure))
#2 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Processors\\MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert('insert into `pu...', Array, 'id')
#3 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId(Object(Illuminate\\Database\\Query\\Builder), 'insert into `pu...', Array, 'id')
#4 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId(Array, 'id')
#5 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call('insertGetId', Array)
#6 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId(Object(Illuminate\\Database\\Eloquent\\Builder), Array)
#7 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert(Object(Illuminate\\Database\\Eloquent\\Builder))
#8 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}(Object(App\\Models\\Purchase))
#10 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1218): tap(Object(App\\Models\\Purchase), Object(Closure))
#11 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\Traits\\ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create(Array)
#12 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo(Object(Illuminate\\Database\\Eloquent\\Builder), 'create', Array)
#13 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call('create', Array)
#14 C:\\Users\\Becky\\Desktop\\projects\\backend\\app\\Http\\Controllers\\ProductController.php(163): Illuminate\\Database\\Eloquent\\Model::__callStatic('create', Array)
#15 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(46): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#16 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#17 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#18 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#19 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#20 C:\\Users\\Becky\\Desktop\\projects\\backend\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#22 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#32 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#33 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#34 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#39 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#40 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#41 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#42 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#43 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#44 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#64 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#65 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#66 C:\\Users\\Becky\\Desktop\\projects\\backend\\public\\index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#67 C:\\Users\\Becky\\Desktop\\projects\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\resources\\server.php(23): require_once('C:\\\\Users\\\\Becky\\\\...')
#68 {main}"} 
[2026-03-07 06:37:37] local.INFO: Product Store - Request Data {"all_data":{"_token":"C8F3FFP7uSoLCjXImCnOW039uMQ4x2u5KeVs1ZOH","name":"Lara Workman","sku":"Est fugiat dolores","purchase_price":"42.00","unit_id":"9","brand_id":"3","category_id":"4","supplier_id":"1","selling_price":"724.00","alert_quantity":"131.00","expiry_date":"1987-10-03","purchase_quantity":"0","purchase_date":"2026-03-07","reference_no":"PUR-20260307-472","description":"Ea sint sint quis i"},"category_id":"4","brand_id":"3","supplier_id":"1"} 
[2026-04-01 12:47:39] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: update `products` set `category_id` = ?, `products`.`updated_at` = 2026-04-01 12:47:39 where `id` = 1) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: update `products` set `category_id` = ?, `products`.`updated_at` = 2026-04-01 12:47:39 where `id` = 1) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('update `product...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate/Database/Connection->run('update `product...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(549): Illuminate/Database/Connection->affectingStatement('update `product...', Array)
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4167): Illuminate/Database/Connection->update('update `product...', Array)
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1266): Illuminate/Database/Query/Builder->update(Object(Illuminate/Support/Collection))
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1316): Illuminate/Database/Eloquent/Builder->update(Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1233): Illuminate/Database/Eloquent/Model->performUpdate(Object(Illuminate/Database/Eloquent/Builder))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1090): Illuminate/Database/Eloquent/Model->save(Array)
#8 C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/ProductController.php(268): Illuminate/Database/Eloquent/Model->update(Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/ProductController->update(Object(Illuminate/Http/Request), Object(App/Models/Product))
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProductController), 'update')
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Becky/Desktop/projects/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#60 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#62 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'category_id' cannot be null at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:609)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(609): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('update `product...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('update `product...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate/Database/Connection->run('update `product...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(549): Illuminate/Database/Connection->affectingStatement('update `product...', Array)
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4167): Illuminate/Database/Connection->update('update `product...', Array)
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1266): Illuminate/Database/Query/Builder->update(Object(Illuminate/Support/Collection))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1316): Illuminate/Database/Eloquent/Builder->update(Array)
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1233): Illuminate/Database/Eloquent/Model->performUpdate(Object(Illuminate/Database/Eloquent/Builder))
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1090): Illuminate/Database/Eloquent/Model->save(Array)
#10 C:/Users/Becky/Desktop/projects/backend/app/Http/Controllers/ProductController.php(268): Illuminate/Database/Eloquent/Model->update(Array)
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(46): App/Http/Controllers/ProductController->update(Object(Illuminate/Http/Request), Object(App/Models/Product))
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProductController), 'update')
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Becky/Desktop/projects/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#35 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#36 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#37 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#38 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#39 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#60 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#61 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#62 C:/Users/Becky/Desktop/projects/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#63 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Becky//...')
#64 {main}
"} 
[2026-04-01 12:53:58] local.ERROR: SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'unit_id' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: alter table `products` add `unit_id` bigint unsigned null) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S21): SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'unit_id' (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: alter table `products` add `unit_id` bigint unsigned null) at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `pr...', Array, Object(Closure))
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `pr...', Array, Object(Closure))
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `pr...')
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(494): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->table('products', Object(Closure))
#6 C:/Users/Becky/Desktop/projects/backend/database/migrations/2026_04_01_125206_make_product_fields_nullable.php(14): Illuminate/Support/Facades/Facade::__callStatic('table', Array)
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_01_1252...', Object(Closure))
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_01_1252...', Object(Closure))
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Becky//...', 18, false)
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S21): SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'unit_id' at C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('alter table `pr...', Array)
#2 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `pr...', Array, Object(Closure))
#3 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `pr...', Array, Object(Closure))
#4 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `pr...')
#5 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(494): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->table('products', Object(Closure))
#8 C:/Users/Becky/Desktop/projects/backend/database/migrations/2026_04_01_125206_make_product_fields_nullable.php(14): Illuminate/Support/Facades/Facade::__callStatic('table', Array)
#9 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_01_1252...', Object(Closure))
#15 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_01_1252...', Object(Closure))
#16 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Becky//...', 18, false)
#17 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Becky/Desktop/projects/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Becky/Desktop/projects/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Becky/Desktop/projects/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-04-15 10:31:28] local.ERROR: Route [pos.index] not defined. (View: D:\not paid\backend\resources\views\layouts\app.blade.php) (View: D:\not paid\backend\resources\views\layouts\app.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.index] not defined. (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Illuminate/View/ViewException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (Illuminate\\View\\ViewException(code: 0): Route [pos.index] not defined. (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 2)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(255): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#65 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.index] not defined. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.index', Array, true)
#1 D:/not paid/backend/storage/framework/views/6cbdb0ef21c3ac76747dccd7e67bf20c.php(180): route('pos.index')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(255): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#65 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#66 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#67 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#68 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#69 {main}
"} 
[2026-04-15 10:31:57] local.ERROR: Route [pos.index] not defined. (View: D:\not paid\backend\resources\views\layouts\app.blade.php) (View: D:\not paid\backend\resources\views\layouts\app.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.index] not defined. (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Illuminate/View/ViewException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (Illuminate\\View\\ViewException(code: 0): Route [pos.index] not defined. (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 2)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(255): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#65 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.index] not defined. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.index', Array, true)
#1 D:/not paid/backend/storage/framework/views/6cbdb0ef21c3ac76747dccd7e67bf20c.php(180): route('pos.index')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(255): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#65 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#66 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#67 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#68 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#69 {main}
"} 
[2026-04-15 10:32:00] local.ERROR: Route [pos.index] not defined. (View: D:\not paid\backend\resources\views\layouts\app.blade.php) (View: D:\not paid\backend\resources\views\layouts\app.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.index] not defined. (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Illuminate/View/ViewException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (Illuminate\\View\\ViewException(code: 0): Route [pos.index] not defined. (View: D:\\not paid\\backend\\resources\\views\\layouts\\app.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 2)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(255): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#65 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.index] not defined. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.index', Array, true)
#1 D:/not paid/backend/storage/framework/views/6cbdb0ef21c3ac76747dccd7e67bf20c.php(180): route('pos.index')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(255): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#65 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#66 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#67 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#68 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#69 {main}
"} 
[2026-04-15 11:54:02] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 11:54:02] local.INFO: Old stock: 60.00  
[2026-04-15 11:54:02] local.INFO: Quantity deducted: 1  
[2026-04-15 11:54:02] local.INFO: New stock: 59  
[2026-04-15 11:54:26] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 11:54:26] local.INFO: Old stock: 59.00  
[2026-04-15 11:54:26] local.INFO: Quantity deducted: 1  
[2026-04-15 11:54:26] local.INFO: New stock: 58  
[2026-04-15 11:54:50] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 11:54:50] local.INFO: Old stock: 58.00  
[2026-04-15 11:54:50] local.INFO: Quantity deducted: 1  
[2026-04-15 11:54:50] local.INFO: New stock: 57  
[2026-04-15 11:55:27] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 11:55:27] local.INFO: Old stock: 57.00  
[2026-04-15 11:55:27] local.INFO: Quantity deducted: 1  
[2026-04-15 11:55:27] local.INFO: New stock: 56  
[2026-04-15 11:56:52] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 11:56:52] local.INFO: Old stock: 56.00  
[2026-04-15 11:56:52] local.INFO: Quantity deducted: 1  
[2026-04-15 11:56:52] local.INFO: New stock: 55  
[2026-04-15 12:02:23] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:02:23] local.INFO: Old stock: 55.00  
[2026-04-15 12:02:23] local.INFO: Quantity deducted: 1  
[2026-04-15 12:02:23] local.INFO: New stock: 54  
[2026-04-15 12:02:34] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:02:34] local.INFO: Old stock: 54.00  
[2026-04-15 12:02:34] local.INFO: Quantity deducted: 1  
[2026-04-15 12:02:34] local.INFO: New stock: 53  
[2026-04-15 12:02:59] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:02:59] local.INFO: Old stock: 53.00  
[2026-04-15 12:02:59] local.INFO: Quantity deducted: 2  
[2026-04-15 12:02:59] local.INFO: New stock: 51  
[2026-04-15 12:03:10] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:03:10] local.INFO: Old stock: 51.00  
[2026-04-15 12:03:10] local.INFO: Quantity deducted: 1  
[2026-04-15 12:03:10] local.INFO: New stock: 50  
[2026-04-15 12:03:39] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:03:39] local.INFO: Old stock: 50.00  
[2026-04-15 12:03:39] local.INFO: Quantity deducted: 1  
[2026-04-15 12:03:39] local.INFO: New stock: 49  
[2026-04-15 12:08:47] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:08:47] local.INFO: Old stock: 49.00  
[2026-04-15 12:08:47] local.INFO: Quantity deducted: 2  
[2026-04-15 12:08:47] local.INFO: New stock: 47  
[2026-04-15 12:15:25] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:15:25] local.INFO: Old stock: 47.00  
[2026-04-15 12:15:25] local.INFO: Quantity deducted: 2  
[2026-04-15 12:15:25] local.INFO: New stock: 45  
[2026-04-15 12:16:03] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:16:03] local.INFO: Old stock: 45.00  
[2026-04-15 12:16:03] local.INFO: Quantity deducted: 1  
[2026-04-15 12:16:03] local.INFO: New stock: 44  
[2026-04-15 12:20:15] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:20:15] local.INFO: Old stock: 44.00  
[2026-04-15 12:20:15] local.INFO: Quantity deducted: 2  
[2026-04-15 12:20:15] local.INFO: New stock: 42  
[2026-04-15 12:20:50] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-15 12:20:50] local.INFO: Old stock: 42.00  
[2026-04-15 12:20:50] local.INFO: Quantity deducted: 1  
[2026-04-15 12:20:50] local.INFO: New stock: 41  
[2026-04-15 13:17:08] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-15 13:17:08] local.INFO: Old stock: 148.00  
[2026-04-15 13:17:08] local.INFO: Quantity deducted: 1  
[2026-04-15 13:17:08] local.INFO: New stock: 147  
[2026-04-15 13:50:43] local.ERROR: Cannot end a section without first starting one. (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php(1840): Illuminate/View/Factory->stopSection()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#60 {main}
"} 
[2026-04-15 13:53:53] local.ERROR: Cannot end a section without first starting one. (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php(1840): Illuminate/View/Factory->stopSection()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#60 {main}
"} 
[2026-04-15 13:54:06] local.ERROR: Cannot end a section without first starting one. (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php(1840): Illuminate/View/Factory->stopSection()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#60 {main}
"} 
[2026-04-15 13:54:36] local.ERROR: Cannot end a section without first starting one. (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php(1840): Illuminate/View/Factory->stopSection()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#60 {main}
"} 
[2026-04-15 13:54:43] local.ERROR: Cannot end a section without first starting one. (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php(1840): Illuminate/View/Factory->stopSection()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#60 {main}
"} 
[2026-04-17 11:52:31] local.ERROR: syntax error, unexpected token "," (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): syntax error, unexpected token \",\" (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php:920)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ParseError), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (ParseError(code: 0): syntax error, unexpected token \",\" at D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php:920)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#58 {main}
"} 
[2026-04-17 15:00:40] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-17 15:00:40] local.INFO: Old stock: 41.00  
[2026-04-17 15:00:40] local.INFO: Quantity deducted: 3  
[2026-04-17 15:00:40] local.INFO: New stock: 38  
[2026-04-17 15:00:40] local.INFO: Stock deduction for product: Multivitamin Complex  
[2026-04-17 15:00:40] local.INFO: Old stock: 90.00  
[2026-04-17 15:00:40] local.INFO: Quantity deducted: 1  
[2026-04-17 15:00:40] local.INFO: New stock: 89  
[2026-04-17 15:00:55] local.INFO: Stock deduction for product: Digital Thermometer  
[2026-04-17 15:00:55] local.INFO: Old stock: 45.00  
[2026-04-17 15:00:55] local.INFO: Quantity deducted: 1  
[2026-04-17 15:00:55] local.INFO: New stock: 44  
[2026-04-17 15:05:30] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-17 15:05:30] local.INFO: Old stock: 38.00  
[2026-04-17 15:05:30] local.INFO: Quantity deducted: 1  
[2026-04-17 15:05:30] local.INFO: New stock: 37  
[2026-04-17 15:08:12] local.INFO: Stock deduction for product: Multivitamin Complex  
[2026-04-17 15:08:12] local.INFO: Old stock: 89.00  
[2026-04-17 15:08:12] local.INFO: Quantity deducted: 1  
[2026-04-17 15:08:12] local.INFO: New stock: 88  
[2026-04-17 15:08:39] local.INFO: Stock deduction for product: Multivitamin Complex  
[2026-04-17 15:08:39] local.INFO: Old stock: 88.00  
[2026-04-17 15:08:39] local.INFO: Quantity deducted: 1  
[2026-04-17 15:08:39] local.INFO: New stock: 87  
[2026-04-17 15:08:55] local.INFO: Stock deduction for product: Multivitamin Complex  
[2026-04-17 15:08:55] local.INFO: Old stock: 87.00  
[2026-04-17 15:08:55] local.INFO: Quantity deducted: 1  
[2026-04-17 15:08:55] local.INFO: New stock: 86  
[2026-04-19 06:03:05] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-19 06:03:05] local.INFO: Old stock: 25.00  
[2026-04-19 06:03:05] local.INFO: Quantity deducted: 1  
[2026-04-19 06:03:05] local.INFO: New stock: 24  
[2026-04-19 06:29:55] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:29:55] local.INFO: Old stock: 37.00  
[2026-04-19 06:29:55] local.INFO: Quantity deducted: 1  
[2026-04-19 06:29:55] local.INFO: New stock: 36  
[2026-04-19 06:30:53] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:30:53] local.INFO: Old stock: 36.00  
[2026-04-19 06:30:53] local.INFO: Quantity deducted: 1  
[2026-04-19 06:30:53] local.INFO: New stock: 35  
[2026-04-19 06:34:25] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:34:25] local.INFO: Old stock: 35.00  
[2026-04-19 06:34:25] local.INFO: Quantity deducted: 1  
[2026-04-19 06:34:25] local.INFO: New stock: 34  
[2026-04-19 06:40:21] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:40:21] local.INFO: Old stock: 34.00  
[2026-04-19 06:40:21] local.INFO: Quantity deducted: 1  
[2026-04-19 06:40:21] local.INFO: New stock: 33  
[2026-04-19 06:41:08] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:41:08] local.INFO: Old stock: 33.00  
[2026-04-19 06:41:08] local.INFO: Quantity deducted: 1  
[2026-04-19 06:41:08] local.INFO: New stock: 32  
[2026-04-19 06:50:15] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:50:15] local.INFO: Old stock: 31.00  
[2026-04-19 06:50:15] local.INFO: Quantity deducted: 1  
[2026-04-19 06:50:15] local.INFO: New stock: 30  
[2026-04-19 06:50:15] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-19 06:50:15] local.INFO: Old stock: 30.00  
[2026-04-19 06:50:15] local.INFO: Quantity deducted: 1  
[2026-04-19 06:50:15] local.INFO: New stock: 29  
[2026-04-20 21:09:41] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:09:41] local.INFO: Old stock: 29.00  
[2026-04-20 21:09:41] local.INFO: Quantity deducted: 1  
[2026-04-20 21:09:41] local.INFO: New stock: 28  
[2026-04-20 21:09:42] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:09:42] local.INFO: Old stock: 28.00  
[2026-04-20 21:09:42] local.INFO: Quantity deducted: 1  
[2026-04-20 21:09:42] local.INFO: New stock: 27  
[2026-04-20 21:09:43] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:09:43] local.INFO: Old stock: 27.00  
[2026-04-20 21:09:43] local.INFO: Quantity deducted: 1  
[2026-04-20 21:09:43] local.INFO: New stock: 26  
[2026-04-20 21:24:56] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:24:56] local.INFO: Old stock: 26.00  
[2026-04-20 21:24:56] local.INFO: Quantity deducted: 1  
[2026-04-20 21:24:56] local.INFO: New stock: 25  
[2026-04-20 21:25:41] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:25:41] local.INFO: Old stock: 25.00  
[2026-04-20 21:25:41] local.INFO: Quantity deducted: 1  
[2026-04-20 21:25:41] local.INFO: New stock: 24  
[2026-04-20 21:30:29] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:30:29] local.INFO: Old stock: 24.00  
[2026-04-20 21:30:29] local.INFO: Quantity deducted: 1  
[2026-04-20 21:30:29] local.INFO: New stock: 23  
[2026-04-20 21:30:48] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:30:48] local.INFO: Old stock: 23.00  
[2026-04-20 21:30:48] local.INFO: Quantity deducted: 1  
[2026-04-20 21:30:48] local.INFO: New stock: 22  
[2026-04-20 21:40:13] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:40:13] local.INFO: Old stock: 22.00  
[2026-04-20 21:40:13] local.INFO: Quantity deducted: 1  
[2026-04-20 21:40:13] local.INFO: New stock: 21  
[2026-04-20 21:40:52] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:40:52] local.INFO: Old stock: 21.00  
[2026-04-20 21:40:52] local.INFO: Quantity deducted: 1  
[2026-04-20 21:40:52] local.INFO: New stock: 20  
[2026-04-20 21:45:57] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:45:57] local.INFO: Old stock: 20.00  
[2026-04-20 21:45:57] local.INFO: Quantity deducted: 1  
[2026-04-20 21:45:57] local.INFO: New stock: 19  
[2026-04-20 21:46:17] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:46:17] local.INFO: Old stock: 19.00  
[2026-04-20 21:46:17] local.INFO: Quantity deducted: 1  
[2026-04-20 21:46:17] local.INFO: New stock: 18  
[2026-04-20 21:48:55] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:48:55] local.INFO: Old stock: 18.00  
[2026-04-20 21:48:55] local.INFO: Quantity deducted: 1  
[2026-04-20 21:48:55] local.INFO: New stock: 17  
[2026-04-20 21:49:16] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-20 21:49:16] local.INFO: Old stock: 17.00  
[2026-04-20 21:49:16] local.INFO: Quantity deducted: 1  
[2026-04-20 21:49:16] local.INFO: New stock: 16  
[2026-04-20 22:05:06] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-20 22:05:06] local.INFO: Old stock: 24.00  
[2026-04-20 22:05:06] local.INFO: Quantity deducted: 1  
[2026-04-20 22:05:06] local.INFO: New stock: 23  
[2026-04-21 06:19:32] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:19:32] local.INFO: Old stock: 16.00  
[2026-04-21 06:19:32] local.INFO: Quantity deducted: 1  
[2026-04-21 06:19:32] local.INFO: New stock: 15  
[2026-04-21 06:19:33] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:19:33] local.INFO: Old stock: 15.00  
[2026-04-21 06:19:33] local.INFO: Quantity deducted: 1  
[2026-04-21 06:19:33] local.INFO: New stock: 14  
[2026-04-21 06:20:01] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:20:01] local.INFO: Old stock: 14.00  
[2026-04-21 06:20:01] local.INFO: Quantity deducted: 1  
[2026-04-21 06:20:01] local.INFO: New stock: 13  
[2026-04-21 06:22:12] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:22:12] local.INFO: Old stock: 13.00  
[2026-04-21 06:22:12] local.INFO: Quantity deducted: 1  
[2026-04-21 06:22:12] local.INFO: New stock: 12  
[2026-04-21 06:34:05] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:34:05] local.INFO: Old stock: 10.00  
[2026-04-21 06:34:05] local.INFO: Quantity deducted: 4  
[2026-04-21 06:34:05] local.INFO: New stock: 6  
[2026-04-21 06:35:50] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:35:50] local.INFO: Old stock: 6.00  
[2026-04-21 06:35:50] local.INFO: Quantity deducted: 2  
[2026-04-21 06:35:50] local.INFO: New stock: 4  
[2026-04-21 06:49:45] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:49:45] local.INFO: Old stock: 4.00  
[2026-04-21 06:49:45] local.INFO: Quantity deducted: 1  
[2026-04-21 06:49:45] local.INFO: New stock: 3  
[2026-04-21 06:52:29] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:52:29] local.INFO: Old stock: 3.00  
[2026-04-21 06:52:29] local.INFO: Quantity deducted: 1  
[2026-04-21 06:52:29] local.INFO: New stock: 2  
[2026-04-21 06:57:07] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 06:57:07] local.INFO: Old stock: 2.00  
[2026-04-21 06:57:07] local.INFO: Quantity deducted: 1  
[2026-04-21 06:57:07] local.INFO: New stock: 1  
[2026-04-21 07:18:04] local.ERROR: Route [pos.register.details.page] not defined. (View: D:\not paid\backend\resources\views\pos\pos_new.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [pos.register.details.page] not defined. (View: D:\\not paid\\backend\\resources\\views\\pos\\pos_new.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [pos.register.details.page] not defined. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('pos.register.de...', Array, true)
#1 D:/not paid/backend/storage/framework/views/0338266b7004cc2e678d14b89722050b.php(650): route('pos.register.de...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#61 {main}
"} 
[2026-04-21 09:45:28] local.ERROR: Undefined array key "totals" (View: D:\not paid\backend\resources\views\pos\register_details.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined array key \"totals\" (View: D:\\not paid\\backend\\resources\\views\\pos\\register_details.blade.php) at D:/not paid/backend/storage/framework/views/27651c73ec44c65626feab700bc3b347.php:27)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Undefined array key \"totals\" at D:/not paid/backend/storage/framework/views/27651c73ec44c65626feab700bc3b347.php:27)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined array...', 'D://not paid//bac...', 27)
#1 D:/not paid/backend/storage/framework/views/27651c73ec44c65626feab700bc3b347.php(27): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined array...', 'D://not paid//bac...', 27)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#61 {main}
"} 
[2026-04-21 09:45:31] local.ERROR: Undefined array key "totals" (View: D:\not paid\backend\resources\views\pos\register_details.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined array key \"totals\" (View: D:\\not paid\\backend\\resources\\views\\pos\\register_details.blade.php) at D:/not paid/backend/storage/framework/views/27651c73ec44c65626feab700bc3b347.php:27)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Undefined array key \"totals\" at D:/not paid/backend/storage/framework/views/27651c73ec44c65626feab700bc3b347.php:27)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined array...', 'D://not paid//bac...', 27)
#1 D:/not paid/backend/storage/framework/views/27651c73ec44c65626feab700bc3b347.php(27): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined array...', 'D://not paid//bac...', 27)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#61 {main}
"} 
[2026-04-21 10:06:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776758807247","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-21 10:06:47] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-04-21 10:06:47] local.INFO: Old stock: 1.00  
[2026-04-21 10:06:47] local.INFO: Quantity deducted: 1  
[2026-04-21 10:06:47] local.INFO: New stock: 0  
[2026-04-21 10:07:25] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776758845250","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"airtel_money"}} 
[2026-04-21 10:07:25] local.INFO: Stock deduction for product: Calcium Carbonate 600mg  
[2026-04-21 10:07:25] local.INFO: Old stock: 164.00  
[2026-04-21 10:07:25] local.INFO: Quantity deducted: 1  
[2026-04-21 10:07:25] local.INFO: New stock: 163  
[2026-04-21 10:08:20] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776758900507","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"mpamba"}} 
[2026-04-21 10:08:20] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-21 10:08:20] local.INFO: Old stock: 23.00  
[2026-04-21 10:08:20] local.INFO: Quantity deducted: 1  
[2026-04-21 10:08:20] local.INFO: New stock: 22  
[2026-04-21 10:09:01] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776758941159","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"national_bank"}} 
[2026-04-21 10:09:01] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-21 10:09:01] local.INFO: Old stock: 22.00  
[2026-04-21 10:09:01] local.INFO: Quantity deducted: 1  
[2026-04-21 10:09:01] local.INFO: New stock: 21  
[2026-04-21 10:09:51] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776758991163","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"national_bank"}} 
[2026-04-21 10:09:51] local.INFO: Stock deduction for product: Digital Thermometer  
[2026-04-21 10:09:51] local.INFO: Old stock: 44.00  
[2026-04-21 10:09:51] local.INFO: Quantity deducted: 1  
[2026-04-21 10:09:51] local.INFO: New stock: 43  
[2026-04-21 10:11:04] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776759064212","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":2.5},{"method":"standard_bank","amount":10}]}} 
[2026-04-21 11:23:53] local.ERROR: Cannot end a section without first starting one. (View: D:\not paid\backend\resources\views\pos\dashboard.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Cannot end a section without first starting one. (View: D:\\not paid\\backend\\resources\\views\\pos\\dashboard.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(InvalidArgumentException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (InvalidArgumentException(code: 0): Cannot end a section without first starting one. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Concerns/ManagesLayouts.php:94)
[stacktrace]
#0 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(299): Illuminate/View/Factory->stopSection()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#60 {main}
"} 
[2026-04-21 11:46:04] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776764764361","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-21 11:46:04] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-21 11:46:04] local.INFO: Old stock: 21.00  
[2026-04-21 11:46:04] local.INFO: Quantity deducted: 1  
[2026-04-21 11:46:04] local.INFO: New stock: 20  
[2026-04-21 11:46:25] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776764784916","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"airtel_money"}} 
[2026-04-21 11:46:25] local.INFO: Stock deduction for product: First Aid Kit  
[2026-04-21 11:46:25] local.INFO: Old stock: 30.00  
[2026-04-21 11:46:25] local.INFO: Quantity deducted: 1  
[2026-04-21 11:46:25] local.INFO: New stock: 29  
[2026-04-21 11:46:52] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776764811893","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"mpamba"}} 
[2026-04-21 11:46:52] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-21 11:46:52] local.INFO: Old stock: 20.00  
[2026-04-21 11:46:52] local.INFO: Quantity deducted: 1  
[2026-04-21 11:46:52] local.INFO: New stock: 19  
[2026-04-21 11:47:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776764832027","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"national_bank"}} 
[2026-04-21 11:47:12] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-04-21 11:47:12] local.INFO: Old stock: 6.00  
[2026-04-21 11:47:12] local.INFO: Quantity deducted: 1  
[2026-04-21 11:47:12] local.INFO: New stock: 5  
[2026-04-21 11:47:28] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776764848505","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"standard_bank"}} 
[2026-04-21 11:47:28] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-04-21 11:47:28] local.INFO: Old stock: 5.00  
[2026-04-21 11:47:28] local.INFO: Quantity deducted: 1  
[2026-04-21 11:47:28] local.INFO: New stock: 4  
[2026-04-21 12:53:18] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776768797832","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-21 12:53:18] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-21 12:53:18] local.INFO: Old stock: 19.00  
[2026-04-21 12:53:18] local.INFO: Quantity deducted: 1  
[2026-04-21 12:53:18] local.INFO: New stock: 18  
[2026-04-21 12:53:48] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776768828137","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"advance","amount":7000},{"method":"card","amount":68000}]}} 
[2026-04-21 12:56:14] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776768974305","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cheque"}} 
[2026-04-21 12:56:14] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-04-21 12:56:14] local.INFO: Old stock: 4.00  
[2026-04-21 12:56:14] local.INFO: Quantity deducted: 1  
[2026-04-21 12:56:14] local.INFO: New stock: 3  
[2026-04-21 12:57:03] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776769023572","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"advance","amount":7000},{"method":"standard_bank","amount":68000}]}} 
[2026-04-22 05:08:04] local.ERROR: Call to undefined method App\Http\Controllers\ActivityLogController::middleware() {"userId":1,"exception":"[object] (Error(code: 0): Call to undefined method App\\Http\\Controllers\\ActivityLogController::middleware() at D:/not paid/backend/app/Http/Controllers/ActivityLogController.php:14)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1168): App/Http/Controllers/ActivityLogController->__construct()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('App//Http//Contro...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('App//Http//Contro...', Array, true)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('App//Http//Contro...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('App//Http//Contro...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(286): Illuminate/Foundation/Application->make('App//Http//Contro...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(266): Illuminate/Routing/Route->getController()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#56 {main}
"} 
[2026-04-22 05:16:59] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at D:/not paid/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php echo 'Che...', false)
#2 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('echo 'Checking ...', true)
#4 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('echo 'Checking ...', true)
#5 D:/not paid/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('echo 'Checking ...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-04-22 05:37:44] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829064489","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:37:44] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 05:37:44] local.INFO: Old stock: 16.00  
[2026-04-22 05:37:44] local.INFO: Quantity deducted: 4  
[2026-04-22 05:37:44] local.INFO: New stock: 12  
[2026-04-22 05:38:03] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829083507","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:38:03] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 05:38:03] local.INFO: Old stock: 12.00  
[2026-04-22 05:38:03] local.INFO: Quantity deducted: 1  
[2026-04-22 05:38:03] local.INFO: New stock: 11  
[2026-04-22 05:38:26] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829105879","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"bank_transfer"}} 
[2026-04-22 05:38:26] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-22 05:38:26] local.INFO: Old stock: 147.00  
[2026-04-22 05:38:26] local.INFO: Quantity deducted: 1  
[2026-04-22 05:38:26] local.INFO: New stock: 146  
[2026-04-22 05:38:45] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829125556","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"mpamba"}} 
[2026-04-22 05:38:45] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 05:38:45] local.INFO: Old stock: 91.00  
[2026-04-22 05:38:45] local.INFO: Quantity deducted: 1  
[2026-04-22 05:38:45] local.INFO: New stock: 90  
[2026-04-22 05:40:06] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829206371","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:40:06] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-22 05:40:06] local.INFO: Old stock: 146.00  
[2026-04-22 05:40:06] local.INFO: Quantity deducted: 1  
[2026-04-22 05:40:06] local.INFO: New stock: 145  
[2026-04-22 05:41:59] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829319434","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:41:59] local.INFO: Stock deduction for product: Antiseptic Solution 250ml  
[2026-04-22 05:41:59] local.INFO: Old stock: 109.00  
[2026-04-22 05:41:59] local.INFO: Quantity deducted: 1  
[2026-04-22 05:41:59] local.INFO: New stock: 108  
[2026-04-22 05:43:35] local.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1776829415267","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:43:35] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 05:43:35] local.INFO: Old stock: 90.00  
[2026-04-22 05:43:35] local.INFO: Quantity deducted: 1  
[2026-04-22 05:43:35] local.INFO: New stock: 89  
[2026-04-22 05:43:35] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 05:43:35] local.INFO: Old stock: 11.00  
[2026-04-22 05:43:35] local.INFO: Quantity deducted: 1  
[2026-04-22 05:43:35] local.INFO: New stock: 10  
[2026-04-22 05:43:35] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-22 05:43:35] local.INFO: Old stock: 145.00  
[2026-04-22 05:43:35] local.INFO: Quantity deducted: 1  
[2026-04-22 05:43:35] local.INFO: New stock: 144  
[2026-04-22 05:46:29] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829588983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"standard_bank"}} 
[2026-04-22 05:46:29] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-04-22 05:46:29] local.INFO: Old stock: 3.00  
[2026-04-22 05:46:29] local.INFO: Quantity deducted: 2  
[2026-04-22 05:46:29] local.INFO: New stock: 1  
[2026-04-22 05:46:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829606927","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:46:47] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 05:46:47] local.INFO: Old stock: 89.00  
[2026-04-22 05:46:47] local.INFO: Quantity deducted: 3  
[2026-04-22 05:46:47] local.INFO: New stock: 86  
[2026-04-22 05:50:24] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776829823872","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:50:24] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 05:50:24] local.INFO: Old stock: 10.00  
[2026-04-22 05:50:24] local.INFO: Quantity deducted: 1  
[2026-04-22 05:50:24] local.INFO: New stock: 9  
[2026-04-22 05:53:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776830027014","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 05:53:47] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-04-22 05:53:47] local.INFO: Old stock: 1.00  
[2026-04-22 05:53:47] local.INFO: Quantity deducted: 1  
[2026-04-22 05:53:47] local.INFO: New stock: 0  
[2026-04-22 05:54:20] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776830059971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"airtel_money"}} 
[2026-04-22 05:54:20] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 05:54:20] local.INFO: Old stock: 9.00  
[2026-04-22 05:54:20] local.INFO: Quantity deducted: 1  
[2026-04-22 05:54:20] local.INFO: New stock: 8  
[2026-04-22 06:20:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776831611954","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"mpamba","amount":30000},{"method":"standard_bank","amount":270000}]}} 
[2026-04-22 06:22:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776831757614","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 06:22:37] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 06:22:37] local.INFO: Old stock: 4.00  
[2026-04-22 06:22:37] local.INFO: Quantity deducted: 1  
[2026-04-22 06:22:37] local.INFO: New stock: 3  
[2026-04-22 06:50:20] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776833419857","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"airtel_money","amount":8000},{"method":"card","amount":76000}]}} 
[2026-04-22 08:32:30] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776839550304","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 08:32:30] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 08:32:30] local.INFO: Old stock: 86.00  
[2026-04-22 08:32:30] local.INFO: Quantity deducted: 1  
[2026-04-22 08:32:30] local.INFO: New stock: 85  
[2026-04-22 08:32:30] local.ERROR: Class "App\Http\Controllers\StockHistory" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Http\\Controllers\\StockHistory\" not found at D:/not paid/backend/app/Http/Controllers/POSController.php:664)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('finalizeSale', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#6 D:/not paid/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#54 {main}
"} 
[2026-04-22 08:42:08] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776840128294","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 08:42:08] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 08:42:08] local.INFO: Old stock: 85.00  
[2026-04-22 08:42:08] local.INFO: Quantity deducted: 1  
[2026-04-22 08:42:08] local.INFO: New stock: 84  
[2026-04-22 08:42:08] local.ERROR: Class "App\Http\Controllers\StockHistory" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Http\\Controllers\\StockHistory\" not found at D:/not paid/backend/app/Http/Controllers/POSController.php:664)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('finalizeSale', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#6 D:/not paid/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#54 {main}
"} 
[2026-04-22 11:34:42] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776850482588","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 11:34:43] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 11:34:43] local.INFO: Old stock: 2.00  
[2026-04-22 11:34:43] local.INFO: Quantity deducted: 1  
[2026-04-22 11:34:43] local.INFO: New stock: 1  
[2026-04-22 11:34:43] local.ERROR: Class "App\Http\Controllers\StockHistory" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Http\\Controllers\\StockHistory\" not found at D:/not paid/backend/app/Http/Controllers/POSController.php:664)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('finalizeSale', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#6 D:/not paid/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#54 {main}
"} 
[2026-04-22 11:35:45] local.ERROR: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select * from `sessions` where `id` = OvsMooI4YzvSpXFuxXpFRNxOJqKvGcss0sqjIs6r limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select * from `sessions` where `id` = OvsMooI4YzvSpXFuxXpFRNxOJqKvGcss0sqjIs6r limit 1) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate/Database/Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate/Database/Connection->tryAgainIfCausedByLostConnection(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate/Database/Connection->handleQueryException(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select * from `...', Array, Object(Closure))
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select * from `...', Array, false)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate/Database/Query/Builder->get(Array)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3345): Illuminate/Database/Query/Builder->first(Array)
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/DatabaseSessionHandler.php(96): Illuminate/Database/Query/Builder->find('OvsMooI4YzvSpXF...')
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Store.php(128): Illuminate/Session/DatabaseSessionHandler->read('OvsMooI4YzvSpXF...')
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Store.php(116): Illuminate/Session/Store->readFromHandler()
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Store.php(100): Illuminate/Session/Store->loadSession()
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(146): Illuminate/Session/Store->start()
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Session/Middleware/StartSession->Illuminate/Session/Middleware/{closure}(Object(Illuminate/Session/Store))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(143): tap(Object(Illuminate/Session/Store), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(115): Illuminate/Session/Middleware/StartSession->startSession(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#55 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=127....', 'root', Object(SensitiveParameterValue), Array)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate/Database/Connectors/Connector->createPdoConnection('mysql:host=127....', 'root', Object(SensitiveParameterValue), Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate/Database/Connectors/Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=127....', 'root', Object(SensitiveParameterValue), Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate/Database/Connectors/Connector->createConnection('mysql:host=127....', Array, Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate/Database/Connectors/MySqlConnector->connect(Array)
#5 [internal function]: Illuminate/Database/Connectors/ConnectionFactory->Illuminate/Database/Connectors/{closure}()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate/Database/Connection->getPdo()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate/Database/Connection->getPdoForSelect(false)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select * from `...', Array)
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate/Database/Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate/Database/Connection->tryAgainIfCausedByLostConnection(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate/Database/Connection->handleQueryException(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select * from `...', Array, Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select * from `...', Array, false)
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate/Database/Query/Builder->get(Array)
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3345): Illuminate/Database/Query/Builder->first(Array)
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/DatabaseSessionHandler.php(96): Illuminate/Database/Query/Builder->find('OvsMooI4YzvSpXF...')
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Store.php(128): Illuminate/Session/DatabaseSessionHandler->read('OvsMooI4YzvSpXF...')
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Store.php(116): Illuminate/Session/Store->readFromHandler()
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Store.php(100): Illuminate/Session/Store->loadSession()
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(146): Illuminate/Session/Store->start()
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Session/Middleware/StartSession->Illuminate/Session/Middleware/{closure}(Object(Illuminate/Session/Store))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(143): tap(Object(Illuminate/Session/Store), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(115): Illuminate/Session/Middleware/StartSession->startSession(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#65 {main}
"} 
[2026-04-22 11:37:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776850641836","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 11:37:22] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 11:37:22] local.INFO: Old stock: 84.00  
[2026-04-22 11:37:22] local.INFO: Quantity deducted: 1  
[2026-04-22 11:37:22] local.INFO: New stock: 83  
[2026-04-22 11:37:22] local.ERROR: Class "App\Http\Controllers\StockHistory" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"App\\Http\\Controllers\\StockHistory\" not found at D:/not paid/backend/app/Http/Controllers/POSController.php:664)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/POSController->finalizeSale(Object(Illuminate/Http/Request))
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('finalizeSale', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/POSController), 'finalizeSale')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#6 D:/not paid/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#54 {main}
"} 
[2026-04-22 11:41:20] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776850879995","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 11:41:20] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 11:41:20] local.INFO: Old stock: 83.00  
[2026-04-22 11:41:20] local.INFO: Quantity deducted: 1  
[2026-04-22 11:41:20] local.INFO: New stock: 82  
[2026-04-22 11:41:20] local.INFO: Stock deduction for product: Ibuprofen 400mg Tablets  
[2026-04-22 11:41:20] local.INFO: Old stock: 200.00  
[2026-04-22 11:41:20] local.INFO: Quantity deducted: 1  
[2026-04-22 11:41:20] local.INFO: New stock: 199  
[2026-04-22 11:41:57] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776850917164","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"airtel_money","amount":450},{"method":"cash","amount":4050}]}} 
[2026-04-22 11:44:06] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776851046463","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 11:44:06] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 11:44:06] local.INFO: Old stock: 82.00  
[2026-04-22 11:44:06] local.INFO: Quantity deducted: 2  
[2026-04-22 11:44:06] local.INFO: New stock: 80  
[2026-04-22 11:54:55] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776851695183","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 11:54:55] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-22 11:54:55] local.INFO: Old stock: 141.00  
[2026-04-22 11:54:55] local.INFO: Quantity deducted: 1  
[2026-04-22 11:54:55] local.INFO: New stock: 140  
[2026-04-22 11:55:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776851711897","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 11:55:12] local.INFO: Stock deduction for product: Blood Pressure Monitor  
[2026-04-22 11:55:12] local.INFO: Old stock: 1.00  
[2026-04-22 11:55:12] local.INFO: Quantity deducted: 1  
[2026-04-22 11:55:12] local.INFO: New stock: 0  
[2026-04-22 12:28:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776853727340","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 12:28:47] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-22 12:28:47] local.INFO: Old stock: 80.00  
[2026-04-22 12:28:47] local.INFO: Quantity deducted: 1  
[2026-04-22 12:28:47] local.INFO: New stock: 79  
[2026-04-22 12:31:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776853891953","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 12:31:32] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-22 12:31:32] local.INFO: Old stock: 140.00  
[2026-04-22 12:31:32] local.INFO: Quantity deducted: 1  
[2026-04-22 12:31:32] local.INFO: New stock: 139  
[2026-04-22 12:47:33] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776854853715","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-22 12:47:33] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-22 12:47:33] local.INFO: Old stock: 139.00  
[2026-04-22 12:47:33] local.INFO: Quantity deducted: 10  
[2026-04-22 12:47:33] local.INFO: New stock: 129  
[2026-04-22 12:47:33] local.INFO: Stock deduction for product: Calcium Carbonate 600mg  
[2026-04-22 12:47:33] local.INFO: Old stock: 163.00  
[2026-04-22 12:47:33] local.INFO: Quantity deducted: 1  
[2026-04-22 12:47:33] local.INFO: New stock: 162  
[2026-04-23 05:25:16] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776914715801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:25:17] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-23 05:25:17] local.INFO: Old stock: 79.00  
[2026-04-23 05:25:17] local.INFO: Quantity deducted: 1  
[2026-04-23 05:25:17] local.INFO: New stock: 78  
[2026-04-23 05:25:17] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 05:25:17] local.INFO: Old stock: 129.00  
[2026-04-23 05:25:17] local.INFO: Quantity deducted: 1  
[2026-04-23 05:25:17] local.INFO: New stock: 128  
[2026-04-23 05:34:11] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776915251682","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:34:12] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 05:34:12] local.INFO: Old stock: 128.00  
[2026-04-23 05:34:12] local.INFO: Quantity deducted: 1  
[2026-04-23 05:34:12] local.INFO: New stock: 127  
[2026-04-23 05:34:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776915272846","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:34:32] local.INFO: Stock deduction for product: Antiseptic Solution 250ml  
[2026-04-23 05:34:32] local.INFO: Old stock: 108.00  
[2026-04-23 05:34:32] local.INFO: Quantity deducted: 1  
[2026-04-23 05:34:32] local.INFO: New stock: 107  
[2026-04-23 05:39:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776915550522","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:39:10] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 05:39:10] local.INFO: Old stock: 127.00  
[2026-04-23 05:39:10] local.INFO: Quantity deducted: 1  
[2026-04-23 05:39:10] local.INFO: New stock: 126  
[2026-04-23 05:39:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776915567722","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:39:27] local.INFO: Stock deduction for product: Antiseptic Solution 250ml  
[2026-04-23 05:39:27] local.INFO: Old stock: 107.00  
[2026-04-23 05:39:27] local.INFO: Quantity deducted: 1  
[2026-04-23 05:39:27] local.INFO: New stock: 106  
[2026-04-23 05:40:00] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776915600661","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:40:00] local.INFO: Stock deduction for product: Cough Syrup 200ml  
[2026-04-23 05:40:00] local.INFO: Old stock: 78.00  
[2026-04-23 05:40:00] local.INFO: Quantity deducted: 1  
[2026-04-23 05:40:00] local.INFO: New stock: 77  
[2026-04-23 05:40:29] local.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1776915628969","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:40:29] local.INFO: Stock deduction for product: Cough Syrup 200ml  
[2026-04-23 05:40:29] local.INFO: Old stock: 77.00  
[2026-04-23 05:40:29] local.INFO: Quantity deducted: 1  
[2026-04-23 05:40:29] local.INFO: New stock: 76  
[2026-04-23 05:40:29] local.INFO: Stock deduction for product: Glucometer Test Strips 50pcs  
[2026-04-23 05:40:29] local.INFO: Old stock: 40.00  
[2026-04-23 05:40:29] local.INFO: Quantity deducted: 1  
[2026-04-23 05:40:29] local.INFO: New stock: 39  
[2026-04-23 05:40:29] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 05:40:29] local.INFO: Old stock: 126.00  
[2026-04-23 05:40:29] local.INFO: Quantity deducted: 1  
[2026-04-23 05:40:29] local.INFO: New stock: 125  
[2026-04-23 05:56:31] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 05:56:46] local.INFO: addToCart called {"request_data":{"product_id":16,"quantity":1}} 
[2026-04-23 05:57:07] local.INFO: addToCart called {"request_data":{"product_id":12,"quantity":1}} 
[2026-04-23 05:57:14] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776916634603","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:57:14] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 05:57:14] local.INFO: Old stock: 125.00  
[2026-04-23 05:57:14] local.INFO: Quantity deducted: 1  
[2026-04-23 05:57:14] local.INFO: New stock: 124  
[2026-04-23 05:57:14] local.INFO: Stock deduction for product: Eye Drops 15ml  
[2026-04-23 05:57:14] local.INFO: Old stock: 59.00  
[2026-04-23 05:57:14] local.INFO: Quantity deducted: 1  
[2026-04-23 05:57:14] local.INFO: New stock: 58  
[2026-04-23 05:57:14] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776916634603"} 
[2026-04-23 05:57:27] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 05:57:37] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 05:57:54] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776916674354","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":600},{"method":"card","amount":5400}]}} 
[2026-04-23 05:58:06] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 05:58:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776916702581","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:58:22] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 05:58:22] local.INFO: Old stock: 123.00  
[2026-04-23 05:58:22] local.INFO: Quantity deducted: 1  
[2026-04-23 05:58:22] local.INFO: New stock: 122  
[2026-04-23 05:58:22] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776916702581"} 
[2026-04-23 05:58:31] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 05:58:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776916715024","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 05:58:35] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-23 05:58:35] local.INFO: Old stock: 77.00  
[2026-04-23 05:58:35] local.INFO: Quantity deducted: 1  
[2026-04-23 05:58:35] local.INFO: New stock: 76  
[2026-04-23 05:58:35] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776916715024"} 
[2026-04-23 06:07:08] local.INFO: addToCart called {"request_data":{"product_id":16,"quantity":1}} 
[2026-04-23 06:07:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776917232770","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 06:07:12] local.INFO: Stock deduction for product: Eye Drops 15ml  
[2026-04-23 06:07:12] local.INFO: Old stock: 58.00  
[2026-04-23 06:07:12] local.INFO: Quantity deducted: 1  
[2026-04-23 06:07:12] local.INFO: New stock: 57  
[2026-04-23 06:07:12] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776917232770"} 
[2026-04-23 06:07:27] local.INFO: addToCart called {"request_data":{"product_id":16,"quantity":1}} 
[2026-04-23 06:16:55] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 06:28:17] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:28:41] local.INFO: addToCart called {"request_data":{"product_id":16,"quantity":1}} 
[2026-04-23 06:28:48] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776918527912","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 06:28:48] local.INFO: Stock deduction for product: Eye Drops 15ml  
[2026-04-23 06:28:48] local.INFO: Old stock: 58.00  
[2026-04-23 06:28:48] local.INFO: Quantity deducted: 1  
[2026-04-23 06:28:48] local.INFO: New stock: 57  
[2026-04-23 06:28:48] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776918527912"} 
[2026-04-23 06:30:17] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:32:06] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:34:20] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 06:35:18] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:35:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776918927570","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 06:35:27] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 06:35:27] local.INFO: Old stock: 122.00  
[2026-04-23 06:35:27] local.INFO: Quantity deducted: 2  
[2026-04-23 06:35:27] local.INFO: New stock: 120  
[2026-04-23 06:35:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776918927570"} 
[2026-04-23 06:37:06] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:37:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776919030408","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 06:37:10] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 06:37:10] local.INFO: Old stock: 120.00  
[2026-04-23 06:37:10] local.INFO: Quantity deducted: 1  
[2026-04-23 06:37:10] local.INFO: New stock: 119  
[2026-04-23 06:37:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776919030408"} 
[2026-04-23 06:37:19] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:37:23] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 06:37:31] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776919051132","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 06:37:31] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 06:37:31] local.INFO: Old stock: 119.00  
[2026-04-23 06:37:31] local.INFO: Quantity deducted: 1  
[2026-04-23 06:37:31] local.INFO: New stock: 118  
[2026-04-23 06:37:31] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-23 06:37:31] local.INFO: Old stock: 76.00  
[2026-04-23 06:37:31] local.INFO: Quantity deducted: 2  
[2026-04-23 06:37:31] local.INFO: New stock: 74  
[2026-04-23 06:37:31] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776919051132"} 
[2026-04-23 06:38:52] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 06:41:29] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 06:41:42] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776919302842","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 06:41:43] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 06:41:43] local.INFO: Old stock: 118.00  
[2026-04-23 06:41:43] local.INFO: Quantity deducted: 1  
[2026-04-23 06:41:43] local.INFO: New stock: 117  
[2026-04-23 06:41:43] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776919302842"} 
[2026-04-23 06:43:20] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 06:44:32] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 06:48:59] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 06:50:52] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 07:04:28] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 07:04:28] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-04-23 10:41:15] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 10:41:16] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 10:49:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776934161149","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 10:49:21] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 10:49:21] local.INFO: Old stock: 117.00  
[2026-04-23 10:49:21] local.INFO: Quantity deducted: 1  
[2026-04-23 10:49:21] local.INFO: New stock: 116  
[2026-04-23 10:49:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776934161149"} 
[2026-04-23 12:33:24] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 12:33:24] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-23 12:33:31] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776940411008","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 12:33:31] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-23 12:33:31] local.INFO: Old stock: 74.00  
[2026-04-23 12:33:31] local.INFO: Quantity deducted: 2  
[2026-04-23 12:33:31] local.INFO: New stock: 72  
[2026-04-23 12:33:31] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776940411008"} 
[2026-04-23 12:33:43] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 12:33:43] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 12:34:01] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776940441198","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":450},{"method":"card","amount":4050}]}} 
[2026-04-23 12:34:12] local.INFO: addToCart called {"request_data":{"product_id":12,"quantity":1}} 
[2026-04-23 12:34:12] local.INFO: Validation passed {"validated_data":{"product_id":12,"quantity":1}} 
[2026-04-23 12:34:18] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776940458387","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 12:42:27] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 12:42:27] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-04-23 12:42:46] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 12:42:46] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-04-23 13:31:00] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 13:31:00] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-04-23 13:31:14] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-04-23 13:31:14] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-04-23 13:31:26] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:31:26] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:31:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776943892111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:31:32] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:31:32] local.INFO: Old stock: 115.00  
[2026-04-23 13:31:32] local.INFO: Quantity deducted: 1  
[2026-04-23 13:31:32] local.INFO: New stock: 114  
[2026-04-23 13:31:32] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776943892111"} 
[2026-04-23 13:33:26] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:33:26] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:33:56] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:33:56] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:34:14] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:34:14] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:34:25] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776944064971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":9500}]}} 
[2026-04-23 13:38:17] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:38:17] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:38:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944300918","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:38:21] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:38:21] local.INFO: Old stock: 112.00  
[2026-04-23 13:38:21] local.INFO: Quantity deducted: 1  
[2026-04-23 13:38:21] local.INFO: New stock: 111  
[2026-04-23 13:38:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944300918"} 
[2026-04-23 13:38:37] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:38:37] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:38:40] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944320237","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:38:40] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:38:40] local.INFO: Old stock: 111.00  
[2026-04-23 13:38:40] local.INFO: Quantity deducted: 1  
[2026-04-23 13:38:40] local.INFO: New stock: 110  
[2026-04-23 13:38:40] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944320237"} 
[2026-04-23 13:40:21] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:40:21] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:40:25] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944425606","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:40:25] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:40:25] local.INFO: Old stock: 110.00  
[2026-04-23 13:40:25] local.INFO: Quantity deducted: 1  
[2026-04-23 13:40:25] local.INFO: New stock: 109  
[2026-04-23 13:40:25] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944425606"} 
[2026-04-23 13:42:17] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:42:17] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:42:20] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944540145","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:42:20] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:42:20] local.INFO: Old stock: 109.00  
[2026-04-23 13:42:20] local.INFO: Quantity deducted: 1  
[2026-04-23 13:42:20] local.INFO: New stock: 108  
[2026-04-23 13:42:20] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944540145"} 
[2026-04-23 13:45:18] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:45:18] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:45:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944722814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:45:23] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:45:23] local.INFO: Old stock: 108.00  
[2026-04-23 13:45:23] local.INFO: Quantity deducted: 1  
[2026-04-23 13:45:23] local.INFO: New stock: 107  
[2026-04-23 13:45:23] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944722814"} 
[2026-04-23 13:47:12] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:47:12] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:47:15] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944835088","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:47:15] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-23 13:47:15] local.INFO: Old stock: 107.00  
[2026-04-23 13:47:15] local.INFO: Quantity deducted: 1  
[2026-04-23 13:47:15] local.INFO: New stock: 106  
[2026-04-23 13:47:15] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944835088"} 
[2026-04-23 13:47:26] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:47:26] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:47:31] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:47:31] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:47:50] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:47:50] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-23 13:48:02] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1776944882093","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"bank_transfer","amount":9000}]}} 
[2026-04-23 13:48:11] local.INFO: addToCart called {"request_data":{"product_id":12,"quantity":1}} 
[2026-04-23 13:48:11] local.INFO: Validation passed {"validated_data":{"product_id":12,"quantity":1}} 
[2026-04-23 13:48:19] local.INFO: addToCart called {"request_data":{"product_id":10,"quantity":1}} 
[2026-04-23 13:48:19] local.INFO: Validation passed {"validated_data":{"product_id":10,"quantity":1}} 
[2026-04-23 13:48:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1776944902229","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-23 13:48:22] local.INFO: Stock deduction for product: Face Masks 50pcs  
[2026-04-23 13:48:22] local.INFO: Old stock: 150.00  
[2026-04-23 13:48:22] local.INFO: Quantity deducted: 1  
[2026-04-23 13:48:22] local.INFO: New stock: 149  
[2026-04-23 13:48:22] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1776944902229"} 
[2026-04-23 13:50:08] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-23 13:50:08] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:45:59] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:45:59] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:46:04] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777049164594","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 18:46:04] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 18:46:04] local.INFO: Old stock: 104.00  
[2026-04-24 18:46:04] local.INFO: Quantity deducted: 1  
[2026-04-24 18:46:04] local.INFO: New stock: 103  
[2026-04-24 18:46:04] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777049164594"} 
[2026-04-24 18:46:17] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:46:17] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:46:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777049181032","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 18:46:21] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 18:46:21] local.INFO: Old stock: 103.00  
[2026-04-24 18:46:21] local.INFO: Quantity deducted: 1  
[2026-04-24 18:46:21] local.INFO: New stock: 102  
[2026-04-24 18:46:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777049181032"} 
[2026-04-24 18:47:31] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 18:47:31] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 18:47:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777049255467","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 18:47:35] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-24 18:47:35] local.INFO: Old stock: 70.00  
[2026-04-24 18:47:35] local.INFO: Quantity deducted: 1  
[2026-04-24 18:47:35] local.INFO: New stock: 69  
[2026-04-24 18:47:35] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777049255467"} 
[2026-04-24 18:53:54] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:53:54] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:54:17] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 18:54:17] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 18:54:41] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 18:54:41] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:00:27] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 19:00:27] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 19:01:33] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:01:33] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:05:37] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:05:37] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:10:54] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:10:54] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:20:59] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 19:20:59] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 19:24:24] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:24:24] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:26:54] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 19:26:54] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 19:42:52] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:42:52] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 19:51:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777053087288","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 19:51:27] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 19:51:27] local.INFO: Old stock: 102.00  
[2026-04-24 19:51:27] local.INFO: Quantity deducted: 54  
[2026-04-24 19:51:27] local.INFO: New stock: 48  
[2026-04-24 19:51:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777053087288"} 
[2026-04-24 20:04:00] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:04:00] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:04:29] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777053869552","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 20:04:29] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 20:04:29] local.INFO: Old stock: 48.00  
[2026-04-24 20:04:29] local.INFO: Quantity deducted: 12  
[2026-04-24 20:04:29] local.INFO: New stock: 36  
[2026-04-24 20:04:29] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777053869552"} 
[2026-04-24 20:08:28] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 20:08:28] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 20:08:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777054117501","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 20:08:37] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-24 20:08:37] local.INFO: Old stock: 69.00  
[2026-04-24 20:08:37] local.INFO: Quantity deducted: 12  
[2026-04-24 20:08:37] local.INFO: New stock: 57  
[2026-04-24 20:08:37] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777054117501"} 
[2026-04-24 20:09:29] local.INFO: addToCart called {"request_data":{"product_id":6,"quantity":1}} 
[2026-04-24 20:09:29] local.INFO: Validation passed {"validated_data":{"product_id":6,"quantity":1}} 
[2026-04-24 20:09:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777054177588","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 20:09:37] local.INFO: Stock deduction for product: Ibuprofen 400mg Tablets  
[2026-04-24 20:09:37] local.INFO: Old stock: 199.00  
[2026-04-24 20:09:37] local.INFO: Quantity deducted: 1  
[2026-04-24 20:09:37] local.INFO: New stock: 198  
[2026-04-24 20:09:37] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777054177588"} 
[2026-04-24 20:10:50] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:10:50] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:10:53] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777054253160","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 20:10:53] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 20:10:53] local.INFO: Old stock: 36.00  
[2026-04-24 20:10:53] local.INFO: Quantity deducted: 1  
[2026-04-24 20:10:53] local.INFO: New stock: 35  
[2026-04-24 20:10:53] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777054253160"} 
[2026-04-24 20:11:14] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:11:14] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:11:36] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777054296480","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 20:11:36] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 20:11:36] local.INFO: Old stock: 35.00  
[2026-04-24 20:11:36] local.INFO: Quantity deducted: 4  
[2026-04-24 20:11:36] local.INFO: New stock: 31  
[2026-04-24 20:11:36] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777054296480"} 
[2026-04-24 20:11:46] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:11:46] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 20:11:50] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777054310775","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 20:11:50] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 20:11:50] local.INFO: Old stock: 31.00  
[2026-04-24 20:11:50] local.INFO: Quantity deducted: 1  
[2026-04-24 20:11:50] local.INFO: New stock: 30  
[2026-04-24 20:11:50] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777054310775"} 
[2026-04-24 21:52:56] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 21:52:56] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 21:56:33] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 21:56:33] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 21:56:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777060597619","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 21:56:37] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 21:56:37] local.INFO: Old stock: 30.00  
[2026-04-24 21:56:37] local.INFO: Quantity deducted: 1  
[2026-04-24 21:56:37] local.INFO: New stock: 29  
[2026-04-24 21:56:37] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777060597619"} 
[2026-04-24 21:56:50] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 21:56:50] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 21:57:04] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 21:57:04] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 21:57:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777060657814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":5500},{"method":"bank_transfer","amount":53000}]}} 
[2026-04-24 22:33:19] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-24 22:33:19] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-24 22:33:35] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 22:33:35] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 22:33:39] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777062818869","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-24 22:33:39] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-24 22:33:39] local.INFO: Old stock: 16.00  
[2026-04-24 22:33:39] local.INFO: Quantity deducted: 1  
[2026-04-24 22:33:39] local.INFO: New stock: 15  
[2026-04-24 22:33:39] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777062818869"} 
[2026-04-24 22:33:52] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-24 22:33:52] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-24 22:34:09] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777062848838","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":450},{"method":"national_bank","amount":4050}]}} 
[2026-04-26 11:24:41] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-26 11:24:41] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-26 11:24:51] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1777195491298","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-26 11:24:51] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-26 11:24:51] local.INFO: Old stock: 14.00  
[2026-04-26 11:24:51] local.INFO: Quantity deducted: 1  
[2026-04-26 11:24:51] local.INFO: New stock: 13  
[2026-04-26 11:24:51] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777195491298"} 
[2026-04-26 11:25:10] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-26 11:25:10] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-26 11:29:37] local.ERROR: PHP Parse error: Syntax error, unexpected '=' on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected '=' on line 1 at D:/not paid/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php echo 'Ses...', false)
#2 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('echo 'Sessions ...', true)
#4 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('echo 'Sessions ...', true)
#5 D:/not paid/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('echo 'Sessions ...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-04-26 11:31:18] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting ')' on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting ')' on line 1 at D:/not paid/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php try { DB:...', false)
#2 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('try { DB::conne...', true)
#4 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('try { DB::conne...', true)
#5 D:/not paid/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('try { DB::conne...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-04-26 11:31:28] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting ')' on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR, expecting ')' on line 1 at D:/not paid/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php try { DB:...', false)
#2 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('try { DB::conne...', true)
#4 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('try { DB::conne...', true)
#5 D:/not paid/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('try { DB::conne...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-04-26 11:35:45] local.ERROR: The "--columns" option does not exist. {"exception":"[object] (Symfony\\Component\\Console\\Exception\\RuntimeException(code: 0): The \"--columns\" option does not exist. at D:/not paid/backend/vendor/symfony/console/Input/ArgvInput.php:226)
[stacktrace]
#0 D:/not paid/backend/vendor/symfony/console/Input/ArgvInput.php(153): Symfony/Component/Console/Input/ArgvInput->addLongOption('columns', 'method,uri,name...')
#1 D:/not paid/backend/vendor/symfony/console/Input/ArgvInput.php(88): Symfony/Component/Console/Input/ArgvInput->parseLongOption('--columns=metho...')
#2 D:/not paid/backend/vendor/symfony/console/Input/ArgvInput.php(77): Symfony/Component/Console/Input/ArgvInput->parseToken('--columns=metho...', true)
#3 D:/not paid/backend/vendor/symfony/console/Input/Input.php(53): Symfony/Component/Console/Input/ArgvInput->parse()
#4 D:/not paid/backend/vendor/symfony/console/Command/Command.php(295): Symfony/Component/Console/Input/Input->bind(Object(Symfony/Component/Console/Input/InputDefinition))
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#6 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#7 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Foundation/Console/RouteListCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#8 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#11 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#12 {main}
"} 
[2026-04-26 11:42:34] local.ERROR: PHP Parse error: Syntax error, unexpected T_ENCAPSED_AND_WHITESPACE on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_ENCAPSED_AND_WHITESPACE on line 1 at D:/not paid/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php DB::selec...', false)
#2 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('DB::select('SHO...', true)
#4 D:/not paid/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('DB::select('SHO...', true)
#5 D:/not paid/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('DB::select('SHO...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-04-26 11:43:01] local.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('sessions', Object(Closure))
#6 D:/not paid/backend/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_26_1142...', Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_26_1142...', Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('D://not paid//bac...', 18, false)
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('create table `s...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('sessions', Object(Closure))
#8 D:/not paid/backend/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_26_1142...', Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_26_1142...', Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('D://not paid//bac...', 18, false)
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 D:/not paid/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 D:/not paid/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 D:/not paid/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 D:/not paid/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 D:/not paid/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-04-26 11:44:49] local.ERROR: Target [Illuminate\Contracts\Auth\Middleware\AuthenticatesRequests] is not instantiable. {"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target [Illuminate\\Contracts\\Auth\\Middleware\\AuthenticatesRequests] is not instantiable. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1411)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1131): Illuminate/Container/Container->notInstantiable('Illuminate//Cont...')
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('Illuminate//Cont...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('Illuminate//Cont...', Array, true)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('Illuminate//Cont...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('Illuminate//Cont...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(208): Illuminate/Foundation/Application->make('Illuminate//Cont...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#48 {main}
"} 
[2026-04-26 11:45:04] local.ERROR: Target [Illuminate\Contracts\Auth\Middleware\AuthenticatesRequests] is not instantiable. {"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target [Illuminate\\Contracts\\Auth\\Middleware\\AuthenticatesRequests] is not instantiable. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php:1411)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(1131): Illuminate/Container/Container->notInstantiable('Illuminate//Cont...')
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate/Container/Container->build('Illuminate//Cont...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate/Container/Container->resolve('Illuminate//Cont...', Array, true)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate/Foundation/Application->resolve('Illuminate//Cont...', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate/Container/Container->make('Illuminate//Cont...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(257): Illuminate/Foundation/Application->make('Illuminate//Cont...')
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(215): Illuminate/Foundation/Http/Kernel->terminateMiddleware(Object(Illuminate/Http/Request), Object(Illuminate/Http/Response))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1222): Illuminate/Foundation/Http/Kernel->terminate(Object(Illuminate/Http/Request), Object(Illuminate/Http/Response))
#8 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#10 {main}
"} 
[2026-04-26 12:23:54] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-04-26 12:23:54] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-04-26 12:24:02] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-04-26 12:24:02] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-04-26 12:24:15] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1777199055525","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-04-26 12:24:15] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-04-26 12:24:15] local.INFO: Old stock: 13.00  
[2026-04-26 12:24:15] local.INFO: Quantity deducted: 12  
[2026-04-26 12:24:15] local.INFO: New stock: 1  
[2026-04-26 12:24:15] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-04-26 12:24:15] local.INFO: Old stock: 57.00  
[2026-04-26 12:24:15] local.INFO: Quantity deducted: 1  
[2026-04-26 12:24:15] local.INFO: New stock: 56  
[2026-04-26 12:24:15] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1777199055525"} 
[2026-05-07 16:50:26] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-05-07 16:50:26] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-05-07 20:05:27] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-05-07 20:05:27] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-05-07 20:30:43] local.INFO: Stock Adjustment - Initial State {"product_id":"29","previous_quantity":"0.00","previous_selling_price":"600000.00","validated_data":{"product_id":"29","adjustment_type":"add","quantity":"5","reason":"needed more","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-07"}} 
[2026-05-07 20:30:43] local.INFO: Stock Adjustment - After Quantity Save {"product_id":29,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-05-07 20:31:30] local.INFO: Stock Adjustment - Initial State {"product_id":"5","previous_quantity":"0.00","previous_selling_price":"15500.00","validated_data":{"product_id":"5","adjustment_type":"add","quantity":"100","reason":"new","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-07"}} 
[2026-05-07 20:31:30] local.INFO: Stock Adjustment - After Quantity Save {"product_id":5,"new_quantity":100.0,"current_stock":100.0,"changes_made":"Quantity adjusted"} 
[2026-05-07 20:32:34] local.INFO: Stock Adjustment - Initial State {"product_id":"23","previous_quantity":"137.00","previous_selling_price":"1500.00","validated_data":{"product_id":"23","adjustment_type":"add","quantity":null,"reason":"new","new_selling_price":null,"new_purchase_price":"500.00","new_expiry_date":"2026-05-07"}} 
[2026-05-07 20:32:34] local.INFO: Stock Adjustment - After Price-Only Save {"product_id":23,"new_selling_price":"1500.00","current_stock":"137.00","changes_made":"Prices updated only"} 
[2026-05-07 20:33:10] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"53.00","previous_selling_price":"5000.00","validated_data":{"product_id":"19","adjustment_type":"add","quantity":"5","reason":"new","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-07"}} 
[2026-05-07 20:33:10] local.INFO: Stock Adjustment - After Quantity Save {"product_id":19,"new_quantity":58.0,"current_stock":58.0,"changes_made":"Quantity adjusted"} 
[2026-05-07 20:33:41] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"58.00","previous_selling_price":"5000.00","validated_data":{"product_id":"19","adjustment_type":"add","quantity":"4","reason":"oo","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-07"}} 
[2026-05-07 20:33:41] local.INFO: Stock Adjustment - After Quantity Save {"product_id":19,"new_quantity":62.0,"current_stock":62.0,"changes_made":"Quantity adjusted"} 
[2026-05-07 20:34:10] local.INFO: Stock Adjustment - Initial State {"product_id":"19","previous_quantity":"62.00","previous_selling_price":"5000.00","validated_data":{"product_id":"19","adjustment_type":"add","quantity":"6","reason":"damaged","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-07"}} 
[2026-05-07 20:34:10] local.INFO: Stock Adjustment - After Quantity Save {"product_id":19,"new_quantity":68.0,"current_stock":68.0,"changes_made":"Quantity adjusted"} 
[2026-05-07 20:41:32] local.ERROR: Undefined variable $fromDate (View: D:\not paid\backend\resources\views\pos\profit-loss.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Undefined variable $fromDate (View: D:\\not paid\\backend\\resources\\views\\pos\\profit-loss.blade.php) at D:/not paid/backend/storage/framework/views/31efa4db7de52e7e4907bbea238b93cd.php:29)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (ErrorException(code: 0): Undefined variable $fromDate at D:/not paid/backend/storage/framework/views/31efa4db7de52e7e4907bbea238b93cd.php:29)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined varia...', 'D://not paid//bac...', 29)
#1 D:/not paid/backend/storage/framework/views/31efa4db7de52e7e4907bbea238b93cd.php(29): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined varia...', 'D://not paid//bac...', 29)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#61 {main}
"} 
[2026-05-07 21:46:38] local.ERROR: Route [contacts.store-supplier] not defined. (View: D:\not paid\backend\resources\views\pos\add-product.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [contacts.store-supplier] not defined. (View: D:\\not paid\\backend\\resources\\views\\pos\\add-product.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#59 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [contacts.store-supplier] not defined. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('contacts.store-...', Array, true)
#1 D:/not paid/backend/storage/framework/views/596659b6af1c255d037e36a53b3bc6f7.php(401): route('contacts.store-...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#63 {main}
"} 
[2026-05-07 21:53:07] local.INFO: Product Store - Request Data {"all_data":{"_token":"dkVUqo6GX8H35WGpOasVGqDt4qZZ6qQnNB21xQhd","name":"shuwaganda","sku":"123456789","category_id":"1","brand_id":null,"unit_id":"14","purchase_price":"500.00","selling_price":"1000.00","description":"this is a stress drug","purchase_quantity":"100.00","alert_quantity":"10","expiry_date":"2026-05-08","supplier_id":"5"},"category_id":"1","brand_id":null,"supplier_id":"5"} 
[2026-05-07 21:53:07] local.INFO: Product Store - Validation Success {"validated_data":{"name":"shuwaganda","unit_id":"14","category_id":"1","brand_id":null,"supplier_id":"5","purchase_price":"500.00","selling_price":"1000.00","sku":"123456789","alert_quantity":"10","expiry_date":"2026-05-08","description":"this is a stress drug","purchase_quantity":"100.00"},"category_id_value":"1","brand_id_value":"null"} 
[2026-05-07 21:53:07] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"shuwaganda","unit_id":"14","category_id":"1","brand_id":null,"supplier_id":"5","purchase_price":"500.00","selling_price":"1000.00","sku":"123456789","alert_quantity":"10","expiry_date":"2026-05-08","description":"this is a stress drug","purchase_quantity":"100.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"100.00","last_purchase_price":"500.00","last_purchase_date":"2026-05-07 21:53:07"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-05-07 21:53:07] local.INFO: Product Store - Product Created {"product_id":782,"product_name":"shuwaganda","product_sku":"123456789"} 
[2026-05-08 11:19:56] local.INFO: Product Store - Request Data {"all_data":{"_token":"70lcHYYJD7Xmvk319A8NxyL9GOKkhQVtt0IVuHYh","name":"Coldril","sku":"6009641350479","category_id":"1","brand_id":"1","unit_id":"4","purchase_price":"3000.00","selling_price":"5000.00","description":"medicine for flu","purchase_quantity":"50.00","alert_quantity":"10","expiry_date":"2026-05-27","supplier_id":"5"},"category_id":"1","brand_id":"1","supplier_id":"5"} 
[2026-05-08 11:20:01] local.INFO: Product Store - Validation Success {"validated_data":{"name":"Coldril","unit_id":"4","category_id":"1","brand_id":"1","supplier_id":"5","purchase_price":"3000.00","selling_price":"5000.00","sku":"6009641350479","alert_quantity":"10","expiry_date":"2026-05-27","description":"medicine for flu","purchase_quantity":"50.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-05-08 11:20:01] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Coldril","unit_id":"4","category_id":"1","brand_id":"1","supplier_id":"5","purchase_price":"3000.00","selling_price":"5000.00","sku":"6009641350479","alert_quantity":"10","expiry_date":"2026-05-27","description":"medicine for flu","purchase_quantity":"50.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"50.00","last_purchase_price":"3000.00","last_purchase_date":"2026-05-08 11:20:01"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-05-08 11:20:01] local.INFO: Product Store - Product Created {"product_id":783,"product_name":"Coldril","product_sku":"6009641350479"} 
[2026-05-08 11:21:15] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:21:15] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:53] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:53] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:54] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:54] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:57] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:57] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:58] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:23:58] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:02] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:02] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:04] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:04] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:06] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:06] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 11:24:20] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-05-08 11:24:20] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-05-08 11:24:25] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1778232265046","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 11:24:25] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 11:24:25] local.INFO: Old stock: 50.00  
[2026-05-08 11:24:25] local.INFO: Quantity deducted: 8  
[2026-05-08 11:24:25] local.INFO: New stock: 42  
[2026-05-08 11:24:25] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-05-08 11:24:25] local.INFO: Old stock: 1.00  
[2026-05-08 11:24:25] local.INFO: Quantity deducted: 1  
[2026-05-08 11:24:25] local.INFO: New stock: 0  
[2026-05-08 11:24:25] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778232265046"} 
[2026-05-08 12:04:03] local.ERROR: Route [reports.low-stock] not defined. (View: D:\not paid\backend\resources\views\pos\dashboard.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Route [reports.low-stock] not defined. (View: D:\\not paid\\backend\\resources\\views\\pos\\dashboard.blade.php) at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Symfony/Component/Routing/Exception/RouteNotFoundException), 1)
#1 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#55 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#57 {main}

[previous exception] [object] (Symfony\\Component\\Routing\\Exception\\RouteNotFoundException(code: 0): Route [reports.low-stock] not defined. at D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/UrlGenerator.php:528)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(870): Illuminate/Routing/UrlGenerator->route('reports.low-sto...', Array, true)
#1 D:/not paid/backend/storage/framework/views/2a86810c4a32ac3d2b75f2c795ec8542.php(58): route('reports.low-sto...')
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require('D://not paid//bac...')
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('D://not paid//bac...', Array)
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('D://not paid//bac...', Array)
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('D://not paid//bac...', Array)
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#57 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#58 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#59 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#60 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#61 {main}
"} 
[2026-05-08 12:28:46] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:28:46] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:28:53] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778236133353","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 12:28:53] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 12:28:53] local.INFO: Old stock: 42.00  
[2026-05-08 12:28:53] local.INFO: Quantity deducted: 1  
[2026-05-08 12:28:53] local.INFO: New stock: 41  
[2026-05-08 12:28:53] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778236133353"} 
[2026-05-08 12:29:56] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:29:56] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:29:59] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778236198982","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 12:29:59] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 12:29:59] local.INFO: Old stock: 41.00  
[2026-05-08 12:29:59] local.INFO: Quantity deducted: 1  
[2026-05-08 12:29:59] local.INFO: New stock: 40  
[2026-05-08 12:29:59] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778236198982"} 
[2026-05-08 12:34:58] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:34:58] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:35:06] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778236505983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cheque"}} 
[2026-05-08 12:35:06] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 12:35:06] local.INFO: Old stock: 40.00  
[2026-05-08 12:35:06] local.INFO: Quantity deducted: 1  
[2026-05-08 12:35:06] local.INFO: New stock: 39  
[2026-05-08 12:35:06] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778236505983"} 
[2026-05-08 12:37:58] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:37:58] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 12:38:02] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778236681926","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 12:38:02] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 12:38:02] local.INFO: Old stock: 39.00  
[2026-05-08 12:38:02] local.INFO: Quantity deducted: 1  
[2026-05-08 12:38:02] local.INFO: New stock: 38  
[2026-05-08 12:38:02] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778236681926"} 
[2026-05-08 14:47:18] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 14:47:18] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 14:47:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778244441923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 14:47:22] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 14:47:22] local.INFO: Old stock: 38.00  
[2026-05-08 14:47:22] local.INFO: Quantity deducted: 1  
[2026-05-08 14:47:22] local.INFO: New stock: 37  
[2026-05-08 14:47:22] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778244441923"} 
[2026-05-08 15:34:37] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:34:37] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:34:41] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778247280841","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 15:34:41] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 15:34:41] local.INFO: Old stock: 37.00  
[2026-05-08 15:34:41] local.INFO: Quantity deducted: 1  
[2026-05-08 15:34:41] local.INFO: New stock: 36  
[2026-05-08 15:34:41] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778247280841"} 
[2026-05-08 15:45:36] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:45:36] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:45:39] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778247938919","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 15:45:39] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 15:45:39] local.INFO: Old stock: 36.00  
[2026-05-08 15:45:39] local.INFO: Quantity deducted: 1  
[2026-05-08 15:45:39] local.INFO: New stock: 35  
[2026-05-08 15:45:39] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778247938919"} 
[2026-05-08 15:48:57] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:48:57] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:49:00] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778248140001","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 15:49:00] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 15:49:00] local.INFO: Old stock: 35.00  
[2026-05-08 15:49:00] local.INFO: Quantity deducted: 1  
[2026-05-08 15:49:00] local.INFO: New stock: 34  
[2026-05-08 15:49:00] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778248140001"} 
[2026-05-08 15:49:20] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:49:20] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:49:23] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778248162937","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 15:49:23] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 15:49:23] local.INFO: Old stock: 34.00  
[2026-05-08 15:49:23] local.INFO: Quantity deducted: 1  
[2026-05-08 15:49:23] local.INFO: New stock: 33  
[2026-05-08 15:49:23] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778248162937"} 
[2026-05-08 15:53:37] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:53:37] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 15:53:41] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778248421809","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 15:53:42] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 15:53:42] local.INFO: Old stock: 33.00  
[2026-05-08 15:53:42] local.INFO: Quantity deducted: 1  
[2026-05-08 15:53:42] local.INFO: New stock: 32  
[2026-05-08 15:53:42] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778248421809"} 
[2026-05-08 16:00:06] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:00:06] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:00:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778248810439","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:00:10] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:00:10] local.INFO: Old stock: 32.00  
[2026-05-08 16:00:10] local.INFO: Quantity deducted: 1  
[2026-05-08 16:00:10] local.INFO: New stock: 31  
[2026-05-08 16:00:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778248810439"} 
[2026-05-08 16:00:41] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:00:41] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:00:44] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778248844268","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:00:44] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:00:44] local.INFO: Old stock: 31.00  
[2026-05-08 16:00:44] local.INFO: Quantity deducted: 1  
[2026-05-08 16:00:44] local.INFO: New stock: 30  
[2026-05-08 16:00:44] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778248844268"} 
[2026-05-08 16:03:56] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:03:56] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:04:00] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249040381","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:04:00] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:04:00] local.INFO: Old stock: 30.00  
[2026-05-08 16:04:00] local.INFO: Quantity deducted: 1  
[2026-05-08 16:04:00] local.INFO: New stock: 29  
[2026-05-08 16:04:00] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249040381"} 
[2026-05-08 16:04:56] local.INFO: addToCart called {"request_data":{"product_id":13,"quantity":1}} 
[2026-05-08 16:04:56] local.INFO: Validation passed {"validated_data":{"product_id":13,"quantity":1}} 
[2026-05-08 16:05:00] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249100340","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:05:00] local.INFO: Stock deduction for product: Cough Syrup 200ml  
[2026-05-08 16:05:00] local.INFO: Old stock: 76.00  
[2026-05-08 16:05:00] local.INFO: Quantity deducted: 1  
[2026-05-08 16:05:00] local.INFO: New stock: 75  
[2026-05-08 16:05:00] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249100340"} 
[2026-05-08 16:10:12] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:10:13] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:10:16] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249415834","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:10:16] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:10:16] local.INFO: Old stock: 29.00  
[2026-05-08 16:10:16] local.INFO: Quantity deducted: 1  
[2026-05-08 16:10:16] local.INFO: New stock: 28  
[2026-05-08 16:10:16] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249415834"} 
[2026-05-08 16:11:03] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:11:03] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:11:06] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249466252","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:11:06] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:11:06] local.INFO: Old stock: 28.00  
[2026-05-08 16:11:06] local.INFO: Quantity deducted: 1  
[2026-05-08 16:11:06] local.INFO: New stock: 27  
[2026-05-08 16:11:06] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249466252"} 
[2026-05-08 16:13:07] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:13:07] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:13:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249590046","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:13:10] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:13:10] local.INFO: Old stock: 27.00  
[2026-05-08 16:13:10] local.INFO: Quantity deducted: 1  
[2026-05-08 16:13:10] local.INFO: New stock: 26  
[2026-05-08 16:13:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249590046"} 
[2026-05-08 16:16:10] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:16:10] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:16:13] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249772918","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:16:13] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:16:13] local.INFO: Old stock: 26.00  
[2026-05-08 16:16:13] local.INFO: Quantity deducted: 1  
[2026-05-08 16:16:13] local.INFO: New stock: 25  
[2026-05-08 16:16:13] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249772918"} 
[2026-05-08 16:19:42] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-08 16:19:42] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-08 16:19:45] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778249985334","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:19:45] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-05-08 16:19:45] local.INFO: Old stock: 5.00  
[2026-05-08 16:19:45] local.INFO: Quantity deducted: 1  
[2026-05-08 16:19:45] local.INFO: New stock: 4  
[2026-05-08 16:19:45] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778249985334"} 
[2026-05-08 16:22:24] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:22:24] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 16:22:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778250147224","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:22:27] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 16:22:27] local.INFO: Old stock: 25.00  
[2026-05-08 16:22:27] local.INFO: Quantity deducted: 1  
[2026-05-08 16:22:27] local.INFO: New stock: 24  
[2026-05-08 16:22:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778250147224"} 
[2026-05-08 16:26:02] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-08 16:26:02] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-08 16:26:05] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778250365114","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 16:26:05] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-05-08 16:26:05] local.INFO: Old stock: 4.00  
[2026-05-08 16:26:05] local.INFO: Quantity deducted: 1  
[2026-05-08 16:26:05] local.INFO: New stock: 3  
[2026-05-08 16:26:05] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778250365114"} 
[2026-05-08 16:50:48] local.ERROR: Undefined variable $period {"userId":1,"exception":"[object] (ErrorException(code: 0): Undefined variable $period at D:/not paid/backend/app/Http/Controllers/SaleController.php:73)
[stacktrace]
#0 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleError(2, 'Undefined varia...', 'D://not paid//bac...', 73)
#1 D:/not paid/backend/app/Http/Controllers/SaleController.php(73): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure}(2, 'Undefined varia...', 'D://not paid//bac...', 73)
#2 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/SaleController->index(Object(Illuminate/Http/Request))
#3 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#4 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/SaleController), 'index')
#5 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#6 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#7 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#8 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#18 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#25 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#26 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#27 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#28 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#29 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#50 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#51 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#52 D:/not paid/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#53 D:/not paid/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//bac...')
#54 {main}
"} 
[2026-05-08 20:22:36] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:22:36] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:22:39] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:22:39] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:23:01] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:23:01] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:23:03] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:23:03] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:25:59] local.INFO: Product Store - Request Data {"all_data":{"_token":"3Fm9shdZto2DQmHnuYFTGZYd3vsGf2ZtHWCGbKM5","name":"Casfer","sku":"8906031050354","category_id":"1","brand_id":"2","unit_id":"14","purchase_price":"500.00","selling_price":"1000.00","description":null,"purchase_quantity":"30.00","alert_quantity":"10","expiry_date":"2026-07-17","supplier_id":"5"},"category_id":"1","brand_id":"2","supplier_id":"5"} 
[2026-05-08 20:25:59] local.INFO: Product Store - Validation Success {"validated_data":{"name":"Casfer","unit_id":"14","category_id":"1","brand_id":"2","supplier_id":"5","purchase_price":"500.00","selling_price":"1000.00","sku":"8906031050354","alert_quantity":"10","expiry_date":"2026-07-17","description":null,"purchase_quantity":"30.00"},"category_id_value":"1","brand_id_value":"2"} 
[2026-05-08 20:25:59] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Casfer","unit_id":"14","category_id":"1","brand_id":"2","supplier_id":"5","purchase_price":"500.00","selling_price":"1000.00","sku":"8906031050354","alert_quantity":"10","expiry_date":"2026-07-17","description":null,"purchase_quantity":"30.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"30.00","last_purchase_price":"500.00","last_purchase_date":"2026-05-08 20:25:59"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-05-08 20:25:59] local.INFO: Product Store - Product Created {"product_id":784,"product_name":"Casfer","product_sku":"8906031050354"} 
[2026-05-08 20:26:10] local.INFO: addToCart called {"request_data":{"product_id":784,"quantity":1}} 
[2026-05-08 20:26:10] local.INFO: Validation passed {"validated_data":{"product_id":784,"quantity":1}} 
[2026-05-08 20:26:14] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:26:14] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-08 20:26:35] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1778264795714","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-08 20:26:35] local.INFO: Stock deduction for product: Casfer  
[2026-05-08 20:26:35] local.INFO: Old stock: 30.00  
[2026-05-08 20:26:35] local.INFO: Quantity deducted: 12  
[2026-05-08 20:26:35] local.INFO: New stock: 18  
[2026-05-08 20:26:36] local.INFO: Stock deduction for product: Coldril  
[2026-05-08 20:26:36] local.INFO: Old stock: 24.00  
[2026-05-08 20:26:36] local.INFO: Quantity deducted: 1  
[2026-05-08 20:26:36] local.INFO: New stock: 23  
[2026-05-08 20:26:36] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778264795714"} 
[2026-05-10 06:37:31] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:37:31] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:38:06] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778387886778","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 06:38:07] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 06:38:07] local.INFO: Old stock: 20.00  
[2026-05-10 06:38:07] local.INFO: Quantity deducted: 1  
[2026-05-10 06:38:07] local.INFO: New stock: 19  
[2026-05-10 06:38:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778387886778"} 
[2026-05-10 06:38:36] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:38:36] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:39:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778387977558","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 06:39:37] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 06:39:37] local.INFO: Old stock: 19.00  
[2026-05-10 06:39:37] local.INFO: Quantity deducted: 1  
[2026-05-10 06:39:37] local.INFO: New stock: 18  
[2026-05-10 06:39:37] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778387977558"} 
[2026-05-10 06:43:17] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:43:17] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:43:33] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778388213720","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 06:43:33] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 06:43:33] local.INFO: Old stock: 18.00  
[2026-05-10 06:43:33] local.INFO: Quantity deducted: 1  
[2026-05-10 06:43:33] local.INFO: New stock: 17  
[2026-05-10 06:43:33] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778388213720"} 
[2026-05-10 06:50:32] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:50:32] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:51:11] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778388671687","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 06:51:11] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 06:51:11] local.INFO: Old stock: 17.00  
[2026-05-10 06:51:11] local.INFO: Quantity deducted: 1  
[2026-05-10 06:51:11] local.INFO: New stock: 16  
[2026-05-10 06:51:11] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778388671687"} 
[2026-05-10 06:51:28] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:51:28] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:51:55] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778388715643","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 06:51:55] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 06:51:55] local.INFO: Old stock: 16.00  
[2026-05-10 06:51:55] local.INFO: Quantity deducted: 1  
[2026-05-10 06:51:55] local.INFO: New stock: 15  
[2026-05-10 06:51:55] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778388715643"} 
[2026-05-10 06:52:32] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:52:32] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:57:24] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 06:57:24] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:01:50] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:01:50] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:01:56] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778389316663","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:01:56] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 07:01:56] local.INFO: Old stock: 15.00  
[2026-05-10 07:01:56] local.INFO: Quantity deducted: 1  
[2026-05-10 07:01:56] local.INFO: New stock: 14  
[2026-05-10 07:01:56] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778389316663"} 
[2026-05-10 07:04:02] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:04:02] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:04:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778389450677","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:04:10] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 07:04:10] local.INFO: Old stock: 14.00  
[2026-05-10 07:04:10] local.INFO: Quantity deducted: 1  
[2026-05-10 07:04:10] local.INFO: New stock: 13  
[2026-05-10 07:04:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778389450677"} 
[2026-05-10 07:07:24] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:07:24] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:08:05] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-10 07:08:05] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-10 07:08:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778389690405","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:08:10] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-05-10 07:08:10] local.INFO: Old stock: 3.00  
[2026-05-10 07:08:10] local.INFO: Quantity deducted: 1  
[2026-05-10 07:08:10] local.INFO: New stock: 2  
[2026-05-10 07:08:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778389690405"} 
[2026-05-10 07:08:21] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-10 07:08:21] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-10 07:08:25] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778389705207","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:08:25] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-05-10 07:08:25] local.INFO: Old stock: 2.00  
[2026-05-10 07:08:25] local.INFO: Quantity deducted: 1  
[2026-05-10 07:08:25] local.INFO: New stock: 1  
[2026-05-10 07:08:25] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778389705207"} 
[2026-05-10 07:10:08] local.INFO: addToCart called {"request_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:10:08] local.INFO: Validation passed {"validated_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:10:19] local.INFO: addToCart called {"request_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:10:19] local.INFO: Validation passed {"validated_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:12:48] local.INFO: addToCart called {"request_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:12:48] local.INFO: Validation passed {"validated_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:13:00] local.INFO: addToCart called {"request_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:13:00] local.INFO: Validation passed {"validated_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:18:42] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 07:18:42] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 07:18:56] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778390336776","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:18:56] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-10 07:18:56] local.INFO: Old stock: 100.00  
[2026-05-10 07:18:56] local.INFO: Quantity deducted: 1  
[2026-05-10 07:18:56] local.INFO: New stock: 99  
[2026-05-10 07:18:56] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778390336776"} 
[2026-05-10 07:19:07] local.INFO: addToCart called {"request_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:19:07] local.INFO: Validation passed {"validated_data":{"product_id":30,"quantity":1}} 
[2026-05-10 07:19:24] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-10 07:19:24] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-10 07:19:59] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:19:59] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:20:04] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778390404034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:20:04] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 07:20:04] local.INFO: Old stock: 13.00  
[2026-05-10 07:20:04] local.INFO: Quantity deducted: 1  
[2026-05-10 07:20:04] local.INFO: New stock: 12  
[2026-05-10 07:20:04] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778390404034"} 
[2026-05-10 07:20:20] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:20:20] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:20:23] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778390423800","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:20:23] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 07:20:23] local.INFO: Old stock: 12.00  
[2026-05-10 07:20:23] local.INFO: Quantity deducted: 1  
[2026-05-10 07:20:23] local.INFO: New stock: 11  
[2026-05-10 07:20:23] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778390423800"} 
[2026-05-10 07:20:31] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:20:31] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:20:40] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 07:20:40] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 07:20:52] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1778390451917","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:20:52] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 07:20:52] local.INFO: Old stock: 11.00  
[2026-05-10 07:20:52] local.INFO: Quantity deducted: 1  
[2026-05-10 07:20:52] local.INFO: New stock: 10  
[2026-05-10 07:20:52] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-10 07:20:52] local.INFO: Old stock: 99.00  
[2026-05-10 07:20:52] local.INFO: Quantity deducted: 1  
[2026-05-10 07:20:52] local.INFO: New stock: 98  
[2026-05-10 07:20:52] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778390451917"} 
[2026-05-10 07:49:22] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 07:49:22] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 07:49:25] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778392165589","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 07:49:25] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-10 07:49:25] local.INFO: Old stock: 98.00  
[2026-05-10 07:49:25] local.INFO: Quantity deducted: 1  
[2026-05-10 07:49:25] local.INFO: New stock: 97  
[2026-05-10 07:49:25] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778392165589"} 
[2026-05-10 07:58:06] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:58:06] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 07:58:13] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778392693431","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"card"}} 
[2026-05-10 07:58:13] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 07:58:13] local.INFO: Old stock: 10.00  
[2026-05-10 07:58:13] local.INFO: Quantity deducted: 1  
[2026-05-10 07:58:13] local.INFO: New stock: 9  
[2026-05-10 07:58:13] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778392693431"} 
[2026-05-10 08:13:47] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 08:13:47] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 08:14:28] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778393668810","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":4600},{"method":"standard_bank","amount":41900}]}} 
[2026-05-10 08:28:30] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 08:28:30] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 08:28:39] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 08:28:39] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 08:28:43] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1778394523513","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 08:28:43] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-10 08:28:43] local.INFO: Old stock: 94.00  
[2026-05-10 08:28:43] local.INFO: Quantity deducted: 1  
[2026-05-10 08:28:43] local.INFO: New stock: 93  
[2026-05-10 08:28:43] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 08:28:43] local.INFO: Old stock: 9.00  
[2026-05-10 08:28:43] local.INFO: Quantity deducted: 1  
[2026-05-10 08:28:43] local.INFO: New stock: 8  
[2026-05-10 08:28:43] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778394523513"} 
[2026-05-10 08:36:42] local.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#1 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#2 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#3 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('sessions', Object(Closure))
#6 D:/not paid/cnc lates/backend/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_26_1142...', Object(Closure))
#13 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_26_1142...', Object(Closure))
#14 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('D://not paid//cnc...', 18, false)
#15 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 D:/not paid/cnc lates/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 D:/not paid/cnc lates/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 D:/not paid/cnc lates/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 D:/not paid/cnc lates/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 D:/not paid/cnc lates/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('create table `s...', Array)
#2 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#3 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#4 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#5 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('sessions', Object(Closure))
#8 D:/not paid/cnc lates/backend/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_26_1142...', Object(Closure))
#15 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_26_1142...', Object(Closure))
#16 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('D://not paid//cnc...', 18, false)
#17 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 D:/not paid/cnc lates/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 D:/not paid/cnc lates/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 D:/not paid/cnc lates/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 D:/not paid/cnc lates/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 D:/not paid/cnc lates/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 D:/not paid/cnc lates/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-05-10 08:48:18] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 08:48:18] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 08:48:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778395701928","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 08:48:22] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 08:48:22] local.INFO: Old stock: 8.00  
[2026-05-10 08:48:22] local.INFO: Quantity deducted: 1  
[2026-05-10 08:48:22] local.INFO: New stock: 7  
[2026-05-10 08:48:22] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778395701928"} 
[2026-05-10 08:48:34] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 08:48:34] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 08:48:39] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778395719559","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 08:48:39] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 08:48:39] local.INFO: Old stock: 7.00  
[2026-05-10 08:48:39] local.INFO: Quantity deducted: 1  
[2026-05-10 08:48:39] local.INFO: New stock: 6  
[2026-05-10 08:48:39] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778395719559"} 
[2026-05-10 11:57:32] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 11:57:32] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 11:57:36] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778407055882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 11:57:36] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 11:57:36] local.INFO: Old stock: 6.00  
[2026-05-10 11:57:36] local.INFO: Quantity deducted: 1  
[2026-05-10 11:57:36] local.INFO: New stock: 5  
[2026-05-10 11:57:36] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778407055882"} 
[2026-05-10 11:57:48] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 11:57:48] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 11:57:51] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778407071238","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 11:57:51] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 11:57:51] local.INFO: Old stock: 5.00  
[2026-05-10 11:57:51] local.INFO: Quantity deducted: 1  
[2026-05-10 11:57:51] local.INFO: New stock: 4  
[2026-05-10 11:57:51] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778407071238"} 
[2026-05-10 12:01:03] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:01:03] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:01:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778407267152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:01:07] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 12:01:07] local.INFO: Old stock: 4.00  
[2026-05-10 12:01:07] local.INFO: Quantity deducted: 1  
[2026-05-10 12:01:07] local.INFO: New stock: 3  
[2026-05-10 12:01:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778407267152"} 
[2026-05-10 12:08:40] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:08:40] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:08:42] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778407722732","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:08:42] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 12:08:42] local.INFO: Old stock: 3.00  
[2026-05-10 12:08:42] local.INFO: Quantity deducted: 1  
[2026-05-10 12:08:42] local.INFO: New stock: 2  
[2026-05-10 12:08:42] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778407722732"} 
[2026-05-10 12:11:44] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:11:44] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:11:48] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778407908543","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:11:48] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 12:11:48] local.INFO: Old stock: 2.00  
[2026-05-10 12:11:48] local.INFO: Quantity deducted: 1  
[2026-05-10 12:11:48] local.INFO: New stock: 1  
[2026-05-10 12:11:48] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778407908543"} 
[2026-05-10 12:12:13] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 12:12:13] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 12:12:18] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778407938030","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:12:18] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-10 12:12:18] local.INFO: Old stock: 93.00  
[2026-05-10 12:12:18] local.INFO: Quantity deducted: 1  
[2026-05-10 12:12:18] local.INFO: New stock: 92  
[2026-05-10 12:12:18] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778407938030"} 
[2026-05-10 12:15:05] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:15:05] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:15:08] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778408108339","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:15:08] local.INFO: Stock deduction for product: Coldril  
[2026-05-10 12:15:08] local.INFO: Old stock: 1.00  
[2026-05-10 12:15:08] local.INFO: Quantity deducted: 1  
[2026-05-10 12:15:08] local.INFO: New stock: 0  
[2026-05-10 12:15:08] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778408108339"} 
[2026-05-10 12:24:21] local.INFO: addToCart called {"request_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:24:21] local.INFO: Validation passed {"validated_data":{"product_id":783,"quantity":1}} 
[2026-05-10 12:24:34] local.INFO: addToCart called {"request_data":{"product_id":13,"quantity":1}} 
[2026-05-10 12:24:34] local.INFO: Validation passed {"validated_data":{"product_id":13,"quantity":1}} 
[2026-05-10 12:24:43] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778408683043","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:24:43] local.INFO: Stock deduction for product: Cough Syrup 200ml  
[2026-05-10 12:24:43] local.INFO: Old stock: 75.00  
[2026-05-10 12:24:43] local.INFO: Quantity deducted: 1  
[2026-05-10 12:24:43] local.INFO: New stock: 74  
[2026-05-10 12:24:43] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778408683043"} 
[2026-05-10 12:31:28] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-10 12:31:28] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-10 12:31:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778409092444","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 12:31:32] local.INFO: Stock deduction for product: DICLOFENAC,  
[2026-05-10 12:31:32] local.INFO: Old stock: 1.00  
[2026-05-10 12:31:32] local.INFO: Quantity deducted: 1  
[2026-05-10 12:31:32] local.INFO: New stock: 0  
[2026-05-10 12:31:32] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778409092444"} 
[2026-05-10 13:23:59] local.INFO: addToCart called {"request_data":{"product_id":29,"quantity":1}} 
[2026-05-10 13:23:59] local.INFO: Validation passed {"validated_data":{"product_id":29,"quantity":1}} 
[2026-05-10 13:24:31] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-10 13:24:31] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-10 13:24:44] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778412284578","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-10 13:24:44] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-10 13:24:44] local.INFO: Old stock: 92.00  
[2026-05-10 13:24:44] local.INFO: Quantity deducted: 1  
[2026-05-10 13:24:44] local.INFO: New stock: 91  
[2026-05-10 13:24:44] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778412284578"} 
[2026-05-12 20:48:20] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-12 20:48:21] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-12 20:48:34] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778611714277","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-12 20:48:34] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-12 20:48:34] local.INFO: Old stock: 91.00  
[2026-05-12 20:48:34] local.INFO: Quantity deducted: 1  
[2026-05-12 20:48:34] local.INFO: New stock: 90  
[2026-05-12 20:48:34] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778611714277"} 
[2026-05-12 20:49:47] local.INFO: addToCart called {"request_data":{"product_id":15,"quantity":1}} 
[2026-05-12 20:49:47] local.INFO: Validation passed {"validated_data":{"product_id":15,"quantity":1}} 
[2026-05-12 20:50:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778611810191","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":1000}]}} 
[2026-05-12 22:52:00] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-12 22:52:01] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-12 22:52:23] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-12 22:52:23] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-12 22:52:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778619157726","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"card","amount":14000}]}} 
[2026-05-12 22:55:19] local.INFO: addToCart called {"request_data":{"product_id":4,"quantity":1}} 
[2026-05-12 22:55:19] local.INFO: Validation passed {"validated_data":{"product_id":4,"quantity":1}} 
[2026-05-12 22:55:26] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-12 22:55:26] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-12 22:55:41] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778619341346","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"national_bank","amount":1500},{"method":"cheque","amount":14000}]}} 
[2026-05-12 23:56:30] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at D:/not paid/EDUC/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php // = //App//...', false)
#2 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('// = //App//Models...', true)
#4 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('// = //App//Models...', true)
#5 D:/not paid/EDUC/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('// = //App//Models...')
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/EDUC/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/EDUC/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-05-14 18:15:52] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-14 18:15:53] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-14 18:16:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778775367521","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"cheque","amount":14000}]}} 
[2026-05-14 18:35:52] local.INFO: addToCart called {"request_data":{"product_id":5,"quantity":1}} 
[2026-05-14 18:35:52] local.INFO: Validation passed {"validated_data":{"product_id":5,"quantity":1}} 
[2026-05-14 18:35:55] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778776554955","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"payment_method":"cash"}} 
[2026-05-14 18:35:55] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-14 18:35:55] local.INFO: Old stock: 87.00  
[2026-05-14 18:35:55] local.INFO: Quantity deducted: 1  
[2026-05-14 18:35:55] local.INFO: New stock: 86  
[2026-05-14 18:35:55] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778776554955"} 
[2026-05-14 19:22:27] local.ERROR: Call to undefined method App\Models\Product::saleItems() {"userId":1,"exception":"[object] (BadMethodCallException(code: 0): Call to undefined method App\\Models\\Product::saleItems() at D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php:67)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(36): Illuminate/Database/Eloquent/Model::throwBadMethodCallException('saleItems')
#1 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'saleItems', Array)
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(1122): Illuminate/Database/Eloquent/Model->__call('saleItems', Array)
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(119): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/Concerns/{closure}()
#4 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(1121): Illuminate/Database/Eloquent/Relations/Relation::noConstraints(Object(Closure))
#5 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(46): Illuminate/Database/Eloquent/Builder->getRelationWithoutConstraints('saleItems')
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(117): Illuminate/Database/Eloquent/Builder->has('saleItems', '<', 1, 'and', Object(Closure))
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(43): Illuminate/Database/Eloquent/Builder->hasNested(Array, '>=', 1, 'and', Object(Closure))
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(145): Illuminate/Database/Eloquent/Builder->has('saleItems.sale', '<', 1, 'and', Object(Closure))
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/QueriesRelationships.php(219): Illuminate/Database/Eloquent/Builder->doesntHave('saleItems.sale', 'and', Object(Closure))
#10 D:/not paid/EDUC/backend/app/Http/Controllers/ProfitLossController.php(60): Illuminate/Database/Eloquent/Builder->whereDoesntHave('saleItems.sale', Object(Closure))
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#12 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#14 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 D:/not paid/EDUC/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//EDU...')
#63 {main}
"} 
[2026-05-14 20:40:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778784037370","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Amoxicillin 250mg Capsules","sku":"AMX001","price":"15500.00","selling_price":"15500.00","purchase_price":"8750.00","quantity":12,"product":{"id":5,"name":"Amoxicillin 250mg Capsules","business_location":"2","unit_id":3,"category_id":1,"brand_id":2,"supplier_id":null,"purchase_price":"8750.00","last_purchase_price":null,"selling_price":"15500.00","current_stock":"86.00","stock":"100.00","product_type":"Single","tax":null,"sku":"AMX001","image":null,"description":"Antibiotic for bacterial infections","alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-14T16:35:55.000000Z","brand":{"id":2,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:33:40.000000Z","updated_at":"2026-03-05T20:33:40.000000Z"},"category":{"id":1,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:32:49.000000Z","updated_at":"2026-03-05T20:32:49.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-14 20:40:37] local.ERROR: General error during finalize sale {"message":"Undefined array key \"subtotal\"","file":"D:\\not paid\\EDUC\\backend\\app\\Http\\Controllers\\POSController.php","line":723,"trace":"#0 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Bootstrap\\HandleExceptions.php(258): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'Undefined array...', 'D:\\\\not paid\\\\EDU...', 723)
#1 D:\\not paid\\EDUC\\backend\\app\\Http\\Controllers\\POSController.php(723): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}(2, 'Undefined array...', 'D:\\\\not paid\\\\EDU...', 723)
#2 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Controller.php(54): App\\Http\\Controllers\\POSController->finalizeSale(Object(Illuminate\\Http\\Request))
#3 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction('finalizeSale', Array)
#4 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\POSController), 'finalizeSale')
#5 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#6 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#7 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#8 D:\\not paid\\EDUC\\backend\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#9 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#10 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#11 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#12 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#13 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#14 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#15 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#16 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#17 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#18 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#20 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#21 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#27 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#28 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#29 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#30 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#31 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#32 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#42 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#43 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#44 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#52 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#53 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#54 D:\\not paid\\EDUC\\backend\\public\\index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#55 D:\\not paid\\EDUC\\backend\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\resources\\server.php(23): require_once('D:\\\\not paid\\\\EDU...')
#56 {main}"} 
[2026-05-14 20:49:45] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778784585749","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Amoxicillin 250mg Capsules","sku":"AMX001","price":"15500.00","selling_price":"15500.00","purchase_price":"8750.00","quantity":1,"subtotal":15500,"product":{"id":5,"name":"Amoxicillin 250mg Capsules","business_location":"2","unit_id":3,"category_id":1,"brand_id":2,"supplier_id":null,"purchase_price":"8750.00","last_purchase_price":null,"selling_price":"15500.00","current_stock":"86.00","stock":"100.00","product_type":"Single","tax":null,"sku":"AMX001","image":null,"description":"Antibiotic for bacterial infections","alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-14T16:35:55.000000Z","brand":{"id":2,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:33:40.000000Z","updated_at":"2026-03-05T20:33:40.000000Z"},"category":{"id":1,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:32:49.000000Z","updated_at":"2026-03-05T20:32:49.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-14 20:49:46] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-14 20:49:46] local.INFO: Old stock: 86.00  
[2026-05-14 20:49:46] local.INFO: Quantity deducted: 1  
[2026-05-14 20:49:46] local.INFO: New stock: 85  
[2026-05-14 20:49:46] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778784585749"} 
[2026-05-14 20:51:16] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778784675788","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Amoxicillin 250mg Capsules","sku":"AMX001","price":"15500.00","selling_price":"15500.00","purchase_price":"8750.00","quantity":12,"subtotal":186000,"product":{"id":5,"name":"Amoxicillin 250mg Capsules","business_location":"2","unit_id":3,"category_id":1,"brand_id":2,"supplier_id":null,"purchase_price":"8750.00","last_purchase_price":null,"selling_price":"15500.00","current_stock":"85.00","stock":"100.00","product_type":"Single","tax":null,"sku":"AMX001","image":null,"description":"Antibiotic for bacterial infections","alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-14T18:49:46.000000Z","brand":{"id":2,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:33:40.000000Z","updated_at":"2026-03-05T20:33:40.000000Z"},"category":{"id":1,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:32:49.000000Z","updated_at":"2026-03-05T20:32:49.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-14 20:51:16] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-14 20:51:16] local.INFO: Old stock: 85.00  
[2026-05-14 20:51:16] local.INFO: Quantity deducted: 12  
[2026-05-14 20:51:16] local.INFO: New stock: 73  
[2026-05-14 20:51:16] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778784675788"} 
[2026-05-14 21:10:54] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778785854650","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Amoxicillin 250mg Capsules","sku":"AMX001","price":"15500.00","selling_price":"15500.00","purchase_price":"8750.00","quantity":1,"subtotal":15500,"product":{"id":5,"name":"Amoxicillin 250mg Capsules","business_location":"2","unit_id":3,"category_id":1,"brand_id":2,"supplier_id":null,"purchase_price":"8750.00","last_purchase_price":null,"selling_price":"15500.00","current_stock":"73.00","stock":"100.00","product_type":"Single","tax":null,"sku":"AMX001","image":null,"description":"Antibiotic for bacterial infections","alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-14T18:51:16.000000Z","brand":{"id":2,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:33:40.000000Z","updated_at":"2026-03-05T20:33:40.000000Z"},"category":{"id":1,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:32:49.000000Z","updated_at":"2026-03-05T20:32:49.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-14 21:10:54] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-14 21:10:54] local.INFO: Old stock: 73.00  
[2026-05-14 21:10:54] local.INFO: Quantity deducted: 1  
[2026-05-14 21:10:54] local.INFO: New stock: 72  
[2026-05-14 21:10:54] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778785854650"} 
[2026-05-16 17:30:11] local.ERROR: Unmatched '}' {"exception":"[object] (ParseError(code: 0): Unmatched '}' at D:/not paid/EDUC/backend/app/Http/Controllers/ProductController.php:639)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/composer/ClassLoader.php(427): Composer/Autoload/{closure}('D://not paid//EDU...')
#1 [internal function]: Composer/Autoload/ClassLoader->loadClass('App//Http//Contro...')
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1125): is_a('App//Http//Contro...', 'Illuminate//Rout...', true)
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1062): Illuminate/Routing/Route->controllerMiddleware()
#4 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(834): Illuminate/Routing/Route->gatherMiddleware()
#5 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(816): Illuminate/Routing/Router->gatherRouteMiddleware(Object(Illuminate/Routing/Route))
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#32 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#33 D:/not paid/EDUC/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#34 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//EDU...')
#35 {main}
"} 
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Started. Detected Delimiter: [,]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Header: ["Name","SKU","Description","Purchase Price","Selling Price","Current Stock","Alert Quantity","Expiry Date (YYYY-MM-DD)","Category Name","Brand Name","Unit Name","Supplier Name"]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 2: ["aracetamol 500mg"," ","Pain reliever and a fever reducer","1500","2500","100","10","12\/31\/2027","Pain Killers"," ","Pack","Main Distributor"]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Skip: Row 2, Matched Name: aracetamol 500mg with existing ID: 786 (aracetamol 500mg)  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 3: ["shuwa","","","","","","","","","","",""]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Skip: Row 3, Matched Name: shuwa with existing ID: 787 (shuwa)  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 4: ["flu","","","","","","","","","","",""]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Skip: Row 4, Matched Name: flu with existing ID: 788 (flu)  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 5: ["Keta spirits","","","","","","","","","","",""]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 6: ["Depo-Medrol vinkpred 80mg","","","","","","","","","","",""]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 7: ["Benzyl Penicillin 5 Mega","","","","","","","","","","",""]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 8: ["Benzathine injection - 2.4mega","","","","","","","","","","",""]  
[2026-05-16 17:50:18] local.ERROR: Bulk Upload Processing Row 9: ["Ceftriaxone 1g, santriax","","","","","","","","","","",""]  
[2026-05-16 17:50:19] local.ERROR: Bulk Upload Processing Row 10: ["Gentamycin Injection","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Started. Detected Delimiter: [,]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Header: ["Name","SKU","Description","Purchase Price","Selling Price","Current Stock","Alert Quantity","Expiry Date (YYYY-MM-DD)","Category Name","Brand Name","Unit Name","Supplier Name"]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 2: ["aracetamol 500mg"," ","Pain reliever and a fever reducer","1500","2500","100","10","12\/31\/2027","Pain Killers"," ","Pack","Main Distributor"]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Skip: Row 2, Matched Name: aracetamol 500mg with existing ID: 786 (aracetamol 500mg)  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 3: ["shuwa","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Skip: Row 3, Matched Name: shuwa with existing ID: 787 (shuwa)  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 4: ["flu","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Skip: Row 4, Matched Name: flu with existing ID: 788 (flu)  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 5: [" ","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 6: ["labclave, amoxy + potassium clavunate 1g","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 7: ["cotton wool 50g","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 8: ["dexamethasone 0.5mg 30's","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 9: ["xyron 100, diclofenac suppository","","","","","","","","","","",""]  
[2026-05-16 17:54:01] local.ERROR: Bulk Upload Processing Row 10: ["ibuplus suspension - (ibuprofen and paracetamol)","","","","","","","","","","",""]  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Started. Detected Delimiter: [,]  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Header: ["Name","SKU","Description","Purchase Price","Selling Price","Current Stock","Alert Quantity","Expiry Date (YYYY-MM-DD)","Category Name","Brand Name","Unit Name","Supplier Name"]  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 2 (aracetamol 500mg): Found in DB by Name (ID: 786)  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 3 (shuwa): Found in DB by Name (ID: 787)  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 4 (flu): Found in DB by Name (ID: 788)  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 5: Empty row, skipping.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 6 (labclave, amoxy + potassium clavunate 1g): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 6 (labclave, amoxy + potassium clavunate 1g): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 7 (cotton wool 50g): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 7 (cotton wool 50g): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 8 (dexamethasone 0.5mg 30's): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 8 (dexamethasone 0.5mg 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 9 (xyron 100, diclofenac suppository): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 9 (xyron 100, diclofenac suppository): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 10 (ibuplus suspension - (ibuprofen and paracetamol)): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 10 (ibuplus suspension - (ibuprofen and paracetamol)): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 11 (preg sign, pregnant test): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 11 (preg sign, pregnant test): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 12 (zaar-10,amlodipine 10mg): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 12 (zaar-10,amlodipine 10mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 13 (zaar-5,amlodipine 5mg): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 13 (zaar-5,amlodipine 5mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 14 (dazole clotrimazole pessary 6): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 14 (dazole clotrimazole pessary 6): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 15 (Nervilin 75mg strip): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 15 (Nervilin 75mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 16 (wilcreas vildagliptin 50mg strip): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 16 (wilcreas vildagliptin 50mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 17 (ibucos, ibuprofen 200mg): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 17 (ibucos, ibuprofen 200mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 18 (zithrox azithromycin 500mg tab): Attempting Create.  
[2026-05-16 17:59:50] local.ERROR: Bulk Upload Row 18 (zithrox azithromycin 500mg tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 19 (Alimox - amoxicillin 500mg (15s)): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 19 (Alimox - amoxicillin 500mg (15s)): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 20 (betamol,paracetamol 500mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 20 (betamol,paracetamol 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 21 (ponafen,ibuprofen suspension 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 21 (ponafen,ibuprofen suspension 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 22 (butin,salbutamol syrup 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 22 (butin,salbutamol syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 23 (benacoff linctus syrup 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 23 (benacoff linctus syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 24 (benacoff paeds syrup 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 24 (benacoff paeds syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 25 (entamaxin capsule 500mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 25 (entamaxin capsule 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 26 (entamaxin suspension 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 26 (entamaxin suspension 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 27 (nutrivita syrup 200ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 27 (nutrivita syrup 200ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 28 (altivite syrup,multivitamin 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 28 (altivite syrup,multivitamin 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 29 (k pol, paracetamol syrup 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 29 (k pol, paracetamol syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 30 (tranalion tranexamic acid 500mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 30 (tranalion tranexamic acid 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 31 (zosec omeprazole 20mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 31 (zosec omeprazole 20mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 32 (ateleb (atenolol 50mg) - 10s): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 32 (ateleb (atenolol 50mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 33 (pharmadol s strip): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 33 (pharmadol s strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 34 (ovoid (misoprostol 200mcg) - 1s): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 34 (ovoid (misoprostol 200mcg) - 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 35 (knee support): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 35 (knee support): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 36 (januvia sitagliptin phosphate 50mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 36 (januvia sitagliptin phosphate 50mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 37 (antrol, anastrozole 1mg strip): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 37 (antrol, anastrozole 1mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 38 (ciron amlodipine 10mg strip): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 38 (ciron amlodipine 10mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 39 (beclem, beclomethasone ointment 15gm): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 39 (beclem, beclomethasone ointment 15gm): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 40 (cofrid tablet): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 40 (cofrid tablet): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 41 (difisal, diclofenac sr 100mg strip): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 41 (difisal, diclofenac sr 100mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 42 (cc): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 42 (cc): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 43 (Nifedipine, retard 20mg (umedica)): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 43 (Nifedipine, retard 20mg (umedica)): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 44 (lofnac sr 100mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 44 (lofnac sr 100mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 45 (curamol plus 10's): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 45 (curamol plus 10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 46 (dermazine cream 50gm): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 46 (dermazine cream 50gm): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 47 (dawadine solution 100ml): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 47 (dawadine solution 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 48 (Esofag d): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 48 (Esofag d): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 49 (dexamed dexamethasone eye/ear drop): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 49 (dexamed dexamethasone eye/ear drop): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 50 (evoke sildenafil 100mg): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 50 (evoke sildenafil 100mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 51 (lorhistina,loratidine tab 30's): Attempting Create.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 51 (lorhistina,loratidine tab 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:51] local.ERROR: Bulk Upload Row 52 (mefen, mefenamic acid 250mg): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 52 (mefen, mefenamic acid 250mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 53 (rheumac sr diclofenac 100mg tab): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 53 (rheumac sr diclofenac 100mg tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 54 (rheumac fc 50mg tab): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 54 (rheumac fc 50mg tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 55 (CUPID LUBLICANT 50ML): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 55 (CUPID LUBLICANT 50ML): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 56 (CUPID ULTRA THIN CONDOMS): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 56 (CUPID ULTRA THIN CONDOMS): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 57 (bio oil 125ml natural): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 57 (bio oil 125ml natural): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 58 (bio oil 200ml natural): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 58 (bio oil 200ml natural): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 59 (bio oil dry skin gel 200ml): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 59 (bio oil dry skin gel 200ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 60 (bio oil lotion 175ml): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 60 (bio oil lotion 175ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 61 (bitter leaf): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 61 (bitter leaf): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 62 (disposable lancets 25's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 62 (disposable lancets 25's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 63 (Dove body wash assorted 500ml): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 63 (Dove body wash assorted 500ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 64 (Hygenix Instant Hand Sanitizer 55): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 64 (Hygenix Instant Hand Sanitizer 55): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 65 (valupak cod liver oil 550mg 30's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 65 (valupak cod liver oil 550mg 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 66 (valupak multivit+minerals 25's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 66 (valupak multivit+minerals 25's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 67 (valupak vitamin c+zinc 20's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 67 (valupak vitamin c+zinc 20's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 68 (pause tranexamic acid injection): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 68 (pause tranexamic acid injection): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 69 (bgmet metformin 500mg): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 69 (bgmet metformin 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 70 (betaleb N betamethasone cream): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 70 (betaleb N betamethasone cream): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 71 (dove baby soap): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 71 (dove baby soap): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 72 (Epimax baby&junior soap): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 72 (Epimax baby&junior soap): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 73 (zithrocare azithromycin 500mg): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 73 (zithrocare azithromycin 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 74 (avalife ashwagandha caps 60's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 74 (avalife ashwagandha caps 60's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 75 (avalife sleep caps 60's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 75 (avalife sleep caps 60's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 76 (avalife fight pain 60's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 76 (avalife fight pain 60's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 77 (kloxy cloxacillin caps 40's): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 77 (kloxy cloxacillin caps 40's): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 78 (painotab): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 78 (painotab): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 79 (red jatropha): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 79 (red jatropha): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 80 (artemisia caps): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 80 (artemisia caps): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 81 (avocado seed): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 81 (avocado seed): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 82 (activated charcoal caps): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 82 (activated charcoal caps): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 83 (turmeric caps): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 83 (turmeric caps): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 84 (green tea caps): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 84 (green tea caps): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 85 (bush tea): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 85 (bush tea): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 86 (Bio Oil Natural 60ml): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 86 (Bio Oil Natural 60ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 87 (nova-asprin): Attempting Create.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 87 (nova-asprin): Duplicate detected in database attempt.  
[2026-05-16 17:59:52] local.ERROR: Bulk Upload Row 88 (soursop caps): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 88 (soursop caps): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 89 (vital zinc complez+ vitamin c): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 89 (vital zinc complez+ vitamin c): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 90 (Cortum Cefuroxime 500mg): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 90 (Cortum Cefuroxime 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 91 (Crozaar 50mg Losartan 10's): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 91 (Crozaar 50mg Losartan 10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 92 (Diproson cream): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 92 (Diproson cream): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 93 (Trama-50 tramadol capsules): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 93 (Trama-50 tramadol capsules): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 94 (azileb azithromycin 500mg tab): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 94 (azileb azithromycin 500mg tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 95 (good morning): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 95 (good morning): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 96 (rihaee tab): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 96 (rihaee tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 97 (fendol ibuprofen syrup 100ml): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 97 (fendol ibuprofen syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 98 (finmol plus. pcm,ibuprofen& caffeine): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 98 (finmol plus. pcm,ibuprofen& caffeine): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 99 (xebisco pregabaline 75mg): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 99 (xebisco pregabaline 75mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 100 (triphen expectorant 100ml): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 100 (triphen expectorant 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 101 (flucore fluconazole 150mg strip): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 101 (flucore fluconazole 150mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 102 (diclofen plus): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 102 (diclofen plus): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 103 (gelfil magnessium tab 10's): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 103 (gelfil magnessium tab 10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 104 (salbucort salbutamol inhaler): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 104 (salbucort salbutamol inhaler): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 105 (tamrel-d tamsul+dutasteride): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 105 (tamrel-d tamsul+dutasteride): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 106 (unoketro ketorolac tromethamine injection): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 106 (unoketro ketorolac tromethamine injection): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 107 (ibupar tab 10's): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 107 (ibupar tab 10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 108 (Gynature pill): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 108 (Gynature pill): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 109 (Mepyramine meleate cream): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 109 (Mepyramine meleate cream): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 110 (SlimLyf capsules): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 110 (SlimLyf capsules): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 111 (Laxopeg syrup): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 111 (Laxopeg syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 112 (Rounding figure): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 112 (Rounding figure): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 113 (Opoflam-A): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 113 (Opoflam-A): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 114 (miconazole cream fungistat): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 114 (miconazole cream fungistat): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 115 (chlorphenamine syrup dawa cpm): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 115 (chlorphenamine syrup dawa cpm): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 116 (nebilong 10): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 116 (nebilong 10): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 117 (Clariwin 500 (clarithromycin 500mg) - 10s): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 117 (Clariwin 500 (clarithromycin 500mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 118 (empagliflozin empaflo 25mg strip): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 118 (empagliflozin empaflo 25mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 119 (empagliflozin empaflo 10mg strip): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 119 (empagliflozin empaflo 10mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 120 (clonem 20g): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 120 (clonem 20g): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 121 (fanlar 3's): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 121 (fanlar 3's): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 122 (johnson baby powder 400g): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 122 (johnson baby powder 400g): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 123 (phenobarbital phenobarbitone 30mg): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 123 (phenobarbital phenobarbitone 30mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 124 (sytamol-iv paracetamol injection 1000mg): Attempting Create.  
[2026-05-16 17:59:53] local.ERROR: Bulk Upload Row 124 (sytamol-iv paracetamol injection 1000mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 125 (kofed paed expectorant 100ml): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 125 (kofed paed expectorant 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 126 (Levodopa/carbidopa 100/25): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 126 (Levodopa/carbidopa 100/25): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 127 (famotidine 40mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 127 (famotidine 40mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 128 (ablept gabapentin 300mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 128 (ablept gabapentin 300mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 129 (tanzol 400mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 129 (tanzol 400mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 130 (verpat 100 injection (pethidine 100mg/2ml) 1s): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 130 (verpat 100 injection (pethidine 100mg/2ml) 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 131 (hybro - 10 (hyoscine butylbromide 10mg) tablets -10s): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 131 (hybro - 10 (hyoscine butylbromide 10mg) tablets -10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 132 (surgical blade 24): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 132 (surgical blade 24): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 133 (surgical blade 23): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 133 (surgical blade 23): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 134 (hygienix hand sanitizer 400ml): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 134 (hygienix hand sanitizer 400ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 135 (hygienix hand sanitizer -100ml): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 135 (hygienix hand sanitizer -100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 136 (gasser gel suspension 200ml): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 136 (gasser gel suspension 200ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 137 (nervixit pregabalin 75mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 137 (nervixit pregabalin 75mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 138 (aciache tab 14's): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 138 (aciache tab 14's): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 139 (sal aero salbutamol inhaler): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 139 (sal aero salbutamol inhaler): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 140 (ovulation test): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 140 (ovulation test): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 141 (G-Abzole (Albendazole 400mg) 1s): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 141 (G-Abzole (Albendazole 400mg) 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 142 (elogyl metro syrup 100ml): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 142 (elogyl metro syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 143 (alclox cloxacillin syrup): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 143 (alclox cloxacillin syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 144 (Cosgel 75-Clopidogrel Bisulfate / strip): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 144 (Cosgel 75-Clopidogrel Bisulfate / strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 145 (Benylin 4FLU Tablets (24s)): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 145 (Benylin 4FLU Tablets (24s)): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 146 (Sinutab Nasal Spray - 10ml): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 146 (Sinutab Nasal Spray - 10ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 147 (pulmocef cefuroxime tab 500mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 147 (pulmocef cefuroxime tab 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 148 (dapzin 5-m plus): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 148 (dapzin 5-m plus): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 149 (davir 200mg tab): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 149 (davir 200mg tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 150 (optor ketolorac tromethamine eye drop): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 150 (optor ketolorac tromethamine eye drop): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 151 (ciprocin eye drop): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 151 (ciprocin eye drop): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 152 (abgenta gentamycin eye drop): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 152 (abgenta gentamycin eye drop): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 153 (urysoren solifenacin 5mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 153 (urysoren solifenacin 5mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 154 (ablol 5 timolol eye drop): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 154 (ablol 5 timolol eye drop): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 155 (xsone dexamethasone eye drop): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 155 (xsone dexamethasone eye drop): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 156 (normnil albendazole 400mg): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 156 (normnil albendazole 400mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 157 (ww-Neodex Drops (Dexamethasone + Neomycin Drops) - 5mls): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 157 (ww-Neodex Drops (Dexamethasone + Neomycin Drops) - 5mls): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 158 (accu-check): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 158 (accu-check): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 159 (univir acyclovir cream): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 159 (univir acyclovir cream): Duplicate detected in database attempt.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 160 (adhesive plaster 4cm*4m): Attempting Create.  
[2026-05-16 17:59:54] local.ERROR: Bulk Upload Row 160 (adhesive plaster 4cm*4m): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 161 (mega 3 natural fish 1g): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 161 (mega 3 natural fish 1g): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 162 (omezing omeprazole 20mg): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 162 (omezing omeprazole 20mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 163 (rejunuron): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 163 (rejunuron): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 164 (antagit ds gel 200ml): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 164 (antagit ds gel 200ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 165 (ors lyfe): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 165 (ors lyfe): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 166 (cinnamon tea bags): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 166 (cinnamon tea bags): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 167 (All is Well cloves tea bags): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 167 (All is Well cloves tea bags): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 168 (cloves): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 168 (cloves): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 169 (Dawaclox (cloxacillin suspension) - 100ml): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 169 (Dawaclox (cloxacillin suspension) - 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 170 (Stalcal tablets (calcium & cholecalciferol) - 10s): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 170 (Stalcal tablets (calcium & cholecalciferol) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 171 (today uni tablets (emergency pills) - 1s): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 171 (today uni tablets (emergency pills) - 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 172 (eflaron metronidazole syrup): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 172 (eflaron metronidazole syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 173 (dazole clotrimazole mouth paint): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 173 (dazole clotrimazole mouth paint): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 174 (labclav 625mg): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 174 (labclav 625mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 175 (phipps tab): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 175 (phipps tab): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 176 (Nivea Men (All seasons Moisture) - 400ml): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 176 (Nivea Men (All seasons Moisture) - 400ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 177 (Oscar - HIV self test kit): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 177 (Oscar - HIV self test kit): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 178 (pregstream): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 178 (pregstream): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 179 (flamingo allopurinol 100mg strip): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 179 (flamingo allopurinol 100mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 180 (benzhexol 5mg): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 180 (benzhexol 5mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 181 (evening primrose valupak 500mg): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 181 (evening primrose valupak 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 182 (Valupak vitamin d3 1000IU,60's): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 182 (Valupak vitamin d3 1000IU,60's): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 183 (valupak vitamin d3 5000IU,30's): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 183 (valupak vitamin d3 5000IU,30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 184 (valupak vitamin E 100IU 30's): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 184 (valupak vitamin E 100IU 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 185 (valupak vitamin E 400IU 30's): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 185 (valupak vitamin E 400IU 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 186 (valupak herbal cranberry 30's): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 186 (valupak herbal cranberry 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 187 (valupak ashwagandha +mags+B6): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 187 (valupak ashwagandha +mags+B6): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 188 (gauze bandage 5cm*4y): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 188 (gauze bandage 5cm*4y): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 189 (gauze bandage 7.5cm*4y): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 189 (gauze bandage 7.5cm*4y): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 190 (Fresemius (pethidine injection) - 1): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 190 (Fresemius (pethidine injection) - 1): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 191 (Xonase adult drops (xylometazoline 0.1%) - 10ml): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 191 (Xonase adult drops (xylometazoline 0.1%) - 10ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 192 (xonase junior drop ( xylometazoline 0,05%) - 10ml): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 192 (xonase junior drop ( xylometazoline 0,05%) - 10ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 193 (baby gripe water - 100ml): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 193 (baby gripe water - 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 194 (larycol CZ lozenges immune booster - 24s): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 194 (larycol CZ lozenges immune booster - 24s): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 195 (gemsoz 40 esomeprazole): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 195 (gemsoz 40 esomeprazole): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 196 (gynogem xt): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 196 (gynogem xt): Duplicate detected in database attempt.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 197 (vitogem syrup): Attempting Create.  
[2026-05-16 17:59:55] local.ERROR: Bulk Upload Row 197 (vitogem syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 198 (D-artepp 60/480mg): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 198 (D-artepp 60/480mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 199 (upacof expectorant 100ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 199 (upacof expectorant 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 200 (upacof dry 100ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 200 (upacof dry 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 201 (udidoc ursodeoxycholic acid 300mg 15'S): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 201 (udidoc ursodeoxycholic acid 300mg 15'S): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 202 (Gem-C (vitamin C chewable tablets) - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 202 (Gem-C (vitamin C chewable tablets) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 203 (Folic acid 5mg - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 203 (Folic acid 5mg - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 204 (clomiphene 50mg (Y.S.P) - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 204 (clomiphene 50mg (Y.S.P) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 205 (burncure (silver sulphadiazine cream) - 30g): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 205 (burncure (silver sulphadiazine cream) - 30g): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 206 (Karefenac (diclofenac injection) - 1s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 206 (Karefenac (diclofenac injection) - 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 207 (Dawaspirin 75 ( Aspirin 75mg)  - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 207 (Dawaspirin 75 ( Aspirin 75mg)  - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 208 (gramocef o 200 caps (cefixime 200mg) - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 208 (gramocef o 200 caps (cefixime 200mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 209 (blood lancets 25's): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 209 (blood lancets 25's): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 210 (Agycin 250 (Azithromycin 250mg) - 3s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 210 (Agycin 250 (Azithromycin 250mg) - 3s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 211 (Amva denk 5/160 (amlodipine 5mg + Valsartan 160mg) - 14s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 211 (Amva denk 5/160 (amlodipine 5mg + Valsartan 160mg) - 14s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 212 (stopcold syrup - 100ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 212 (stopcold syrup - 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 213 (Anthel  suspesion (albendazole 200mg/5ml) - 10ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 213 (Anthel  suspesion (albendazole 200mg/5ml) - 10ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 214 (Ceftrisone-1000 injection): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 214 (Ceftrisone-1000 injection): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 215 (Dufenac 75mg capsules (Diclofenac) - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 215 (Dufenac 75mg capsules (Diclofenac) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 216 (G-cospe (Sulfadoxine & Pyrimethamine) - 3s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 216 (G-cospe (Sulfadoxine & Pyrimethamine) - 3s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 217 (xsone N (neomycin & dexamethasone) - 5ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 217 (xsone N (neomycin & dexamethasone) - 5ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 218 (dawasalic ointment 15gm): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 218 (dawasalic ointment 15gm): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 219 (ciprocin ciprofloxacin 500): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 219 (ciprocin ciprofloxacin 500): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 220 (propranolol 40mg - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 220 (propranolol 40mg - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 221 (hemoforce green - 200ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 221 (hemoforce green - 200ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 222 (ibucap capsules (ibuprofen & paracetamol) - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 222 (ibucap capsules (ibuprofen & paracetamol) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 223 (Rufedol tablets (diclofenac & paracetamol) - 10s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 223 (Rufedol tablets (diclofenac & paracetamol) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 224 (shaltoux lozenges - 1s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 224 (shaltoux lozenges - 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 225 (cachfer (Iron syrup) - 100ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 225 (cachfer (Iron syrup) - 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 226 (Johnsons Top-to-Toe 500ml): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 226 (Johnsons Top-to-Toe 500ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 227 (Eros 10 (Tadalafil 10mg) - 4s): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 227 (Eros 10 (Tadalafil 10mg) - 4s): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 228 (Upcof Paedeatric): Attempting Create.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 228 (Upcof Paedeatric): Duplicate detected in database attempt.  
[2026-05-16 17:59:56] local.ERROR: Bulk Upload Row 229 (Vitabiotics Menopace 30's): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 229 (Vitabiotics Menopace 30's): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 230 (Abbot Mlaria test kit): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 230 (Abbot Mlaria test kit): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 231 (dawastin nystatin oral 30ml): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 231 (dawastin nystatin oral 30ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 232 (hiv self test icon brand): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 232 (hiv self test icon brand): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 233 (pregabalin denk 75mg strip): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 233 (pregabalin denk 75mg strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 234 (palmer's cocoa butter,tummy): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 234 (palmer's cocoa butter,tummy): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 235 (rehidrat, blackcurrant sachet): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 235 (rehidrat, blackcurrant sachet): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 236 (hair comb): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 236 (hair comb): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 237 (Janumet 1000mg/50mg tablets (metformin and sitagliptin) - 15s): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 237 (Janumet 1000mg/50mg tablets (metformin and sitagliptin) - 15s): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 238 (carbimazole 10mg tablets - 130s): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 238 (carbimazole 10mg tablets - 130s): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 239 (Nimodipine 30mg tablets - 10s): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 239 (Nimodipine 30mg tablets - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 240 (Letrozole 2.5mg tablets - 10s): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 240 (Letrozole 2.5mg tablets - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 241 (Insulin soluble A): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 241 (Insulin soluble A): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 242 (Insulin insoluble N 100iu/ML): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 242 (Insulin insoluble N 100iu/ML): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 243 (Insulin insoluble N 100iu/ML): Duplicate in CSV batch. Skip. (Name: 1, SKU: )  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 244 (Insulin Biphasic 30/70 100iu/ML): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 244 (Insulin Biphasic 30/70 100iu/ML): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 245 (agycin syrup): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 245 (agycin syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 246 (zolmet metro syrup): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 246 (zolmet metro syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 247 (neuro ease tablet): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 247 (neuro ease tablet): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 248 (multivit g caps,10's): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 248 (multivit g caps,10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 249 (antagit tab 10's): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 249 (antagit tab 10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 250 (cebay cefixime 200mg dt): Attempting Create.  
[2026-05-16 17:59:57] local.ERROR: Bulk Upload Row 250 (cebay cefixime 200mg dt): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 251 (tuxiril syrup 100ml): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 251 (tuxiril syrup 100ml): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 252 (Vital Evening Primrose oil 500mg): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 252 (Vital Evening Primrose oil 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 253 (Replace Junior chocolate flavoured): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 253 (Replace Junior chocolate flavoured): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 254 (Himalaya Liv 52): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 254 (Himalaya Liv 52): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 255 (Get On capsules - 1s): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 255 (Get On capsules - 1s): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 256 (BodiCare Black Molasses): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 256 (BodiCare Black Molasses): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 257 (Adco Napamol): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 257 (Adco Napamol): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 258 (Pink Pills 4 Ladies): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 258 (Pink Pills 4 Ladies): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 259 (Triclofem (Medroxyprogesterone Acetate 150mg/ml) - ampule): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 259 (Triclofem (Medroxyprogesterone Acetate 150mg/ml) - ampule): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 260 (panado day): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 260 (panado day): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 261 (panado night): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 261 (panado night): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 262 (guciprox azithromycin 500mg): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 262 (guciprox azithromycin 500mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 263 (moringa tea bags all is well): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 263 (moringa tea bags all is well): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 264 (Bispanol 10 (hyoscine butylbromide 10mg) - 10s): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 264 (Bispanol 10 (hyoscine butylbromide 10mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 265 (Coldcap capsules 12's): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 265 (Coldcap capsules 12's): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 266 (Salbumol syrup): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 266 (Salbumol syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 267 (Delased Chesty cough syrup): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 267 (Delased Chesty cough syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 268 (Delased Dry cough syrup): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 268 (Delased Dry cough syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 269 (Medven cream): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 269 (Medven cream): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 270 (Lucin cream Hydrocortisone): Attempting Create.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 270 (Lucin cream Hydrocortisone): Duplicate detected in database attempt.  
[2026-05-16 17:59:58] local.ERROR: Bulk Upload Row 271 (Unixil dry syrup-amoxicillin 125mg): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 271 (Unixil dry syrup-amoxicillin 125mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 272 (mediven cream betamethasone valeret): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 272 (mediven cream betamethasone valeret): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 273 (Umicort Hydrocortisone): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 273 (Umicort Hydrocortisone): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 274 (Combiwave sf inhaler Fluticasone): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 274 (Combiwave sf inhaler Fluticasone): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 275 (Auziflora - V capsules - 10s): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 275 (Auziflora - V capsules - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 276 (coldfree capsules): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 276 (coldfree capsules): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 277 (Dexacoral-N eye drops): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 277 (Dexacoral-N eye drops): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 278 (Doxycycline 100mg capsules - 10s): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 278 (Doxycycline 100mg capsules - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 279 (Metfil 500 (metformin 500mg) - 10s): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 279 (Metfil 500 (metformin 500mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 280 (Metfil XR (metformin 1g) -10s): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 280 (Metfil XR (metformin 1g) -10s): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 281 (Pulmoclear syrup): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 281 (Pulmoclear syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 282 (TIM (Timolol eye drops)): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 282 (TIM (Timolol eye drops)): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 283 (Kilpain (paracetamol 500mg) - 20s): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 283 (Kilpain (paracetamol 500mg) - 20s): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 284 (betamol paracetamol suspension 100mg): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 284 (betamol paracetamol suspension 100mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 285 (fast one herbal pain): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 285 (fast one herbal pain): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 286 (one-gripe): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 286 (one-gripe): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 287 (flucloxacillin syrup): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 287 (flucloxacillin syrup): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 288 (fast heat herbal): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 288 (fast heat herbal): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 289 (opoflam gel): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 289 (opoflam gel): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 290 (opocemol tab strip): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 290 (opocemol tab strip): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 291 (beclo beclomethasone 50mcg inhaler): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 291 (beclo beclomethasone 50mcg inhaler): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 292 (crepe bandage 2*4.5m): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 292 (crepe bandage 2*4.5m): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 293 (valupak (multi Vitamin) - 60s): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 293 (valupak (multi Vitamin) - 60s): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 294 (Asomex-LT): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 294 (Asomex-LT): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 295 (Dawavate cream 15mg): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 295 (Dawavate cream 15mg): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 296 (hydralazine 25mg 10's): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 296 (hydralazine 25mg 10's): Duplicate detected in database attempt.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 297 (culinary hemp seed oil ingrow 250ml): Attempting Create.  
[2026-05-16 17:59:59] local.ERROR: Bulk Upload Row 297 (culinary hemp seed oil ingrow 250ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 298 (invegrow cbd oil 600mg): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 298 (invegrow cbd oil 600mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 299 (Fincar (Finasteride 5mg) -10s): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 299 (Fincar (Finasteride 5mg) -10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 300 (Doxazosin 4mg / strip (7s) - Milpharm): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 300 (Doxazosin 4mg / strip (7s) - Milpharm): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 301 (Hercules calamine lotion - 100mls): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 301 (Hercules calamine lotion - 100mls): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 302 (Hercules calamine lotion - 50ml): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 302 (Hercules calamine lotion - 50ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 303 (hercules castor oil - 50ml): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 303 (hercules castor oil - 50ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 304 (Vick Vapor Rub - 10g): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 304 (Vick Vapor Rub - 10g): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 305 (Bilocor 10 (Bisoprolol 10mg) - 10s): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 305 (Bilocor 10 (Bisoprolol 10mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 306 (zinnia F (levonorgestrel & ethinylestradiol) - 28s): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 306 (zinnia F (levonorgestrel & ethinylestradiol) - 28s): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 307 (All Is Well Soursop): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 307 (All Is Well Soursop): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 308 (Griseofil 500 (Griseofulvin 500mg) strip): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 308 (Griseofil 500 (Griseofulvin 500mg) strip): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 309 (Dental floss (macromolecule)- 30s): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 309 (Dental floss (macromolecule)- 30s): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 310 (tseketseke powder all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 310 (tseketseke powder all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 311 (mvunguti caps all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 311 (mvunguti caps all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 312 (aloe vera caps all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 312 (aloe vera caps all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 313 (cayenne pepper caps all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 313 (cayenne pepper caps all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 314 (flax seed caps all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 314 (flax seed caps all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 315 (molinga caps all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 315 (molinga caps all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 316 (esnart powder all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 316 (esnart powder all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 317 (insulin powder all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 317 (insulin powder all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 318 (cinnamon powder all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 318 (cinnamon powder all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 319 (molinga powder all is well): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 319 (molinga powder all is well): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 320 (c-4): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 320 (c-4): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 321 (cardal cap pantoprazole& domperidone): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 321 (cardal cap pantoprazole& domperidone): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 322 (roselion rosuvastatin 20mg): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 322 (roselion rosuvastatin 20mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 323 (Koflyn raspberry for adult): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 323 (Koflyn raspberry for adult): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 324 (berroca mango): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 324 (berroca mango): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 325 (durex regular): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 325 (durex regular): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 326 (Deep Heat Arnica Massage oil 125ml): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 326 (Deep Heat Arnica Massage oil 125ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 327 (Deep Heat Arnica Massage oil 60ml): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 327 (Deep Heat Arnica Massage oil 60ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 328 (Elastoplast Aqua Protect 40's): Attempting Create.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 328 (Elastoplast Aqua Protect 40's): Duplicate detected in database attempt.  
[2026-05-16 18:00:00] local.ERROR: Bulk Upload Row 329 (Nivea coca butter - 400ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 329 (Nivea coca butter - 400ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 330 (Nivea Rich  Nourishing): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 330 (Nivea Rich  Nourishing): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 331 (Nivea cool  kick - 400ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 331 (Nivea cool  kick - 400ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 332 (Nivea black carbon spray - 150ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 332 (Nivea black carbon spray - 150ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 333 (Nivea Dry Impact spray - 150ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 333 (Nivea Dry Impact spray - 150ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 334 (Nivea cool kick spray - 150ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 334 (Nivea cool kick spray - 150ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 335 (Nivea Men Revitalising - 400ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 335 (Nivea Men Revitalising - 400ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 336 (Nivea double effect roll on - 50ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 336 (Nivea double effect roll on - 50ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 337 (Nivea Fresh Natural Roll on - 50ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 337 (Nivea Fresh Natural Roll on - 50ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 338 (Nivea Dry Fresh Roll on - 50ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 338 (Nivea Dry Fresh Roll on - 50ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 339 (parkmed surgical spirit - 100ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 339 (parkmed surgical spirit - 100ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 340 (Strepsils Orange with Vitamin C - 8s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 340 (Strepsils Orange with Vitamin C - 8s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 341 (Vaseline  Aloe Soothe - 400ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 341 (Vaseline  Aloe Soothe - 400ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 342 (vaseline Cocoa  Glow - 400ml): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 342 (vaseline Cocoa  Glow - 400ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 343 (Woods lozenges Original - sachet): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 343 (Woods lozenges Original - sachet): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 344 (Nativa complex multivitamin  for men - 60s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 344 (Nativa complex multivitamin  for men - 60s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 345 (Nativa Menopause support - 60s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 345 (Nativa Menopause support - 60s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 346 (Teegel): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 346 (Teegel): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 347 (Centrum Kids Essentials - sachet): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 347 (Centrum Kids Essentials - sachet): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 348 (Vital Multitime Multivit 100% NRV - 30s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 348 (Vital Multitime Multivit 100% NRV - 30s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 349 (Nativa Vitamin D3 1000IU - 60s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 349 (Nativa Vitamin D3 1000IU - 60s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 350 (Centrum For Men 50+): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 350 (Centrum For Men 50+): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 351 (ivygentacin eye/ear drop): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 351 (ivygentacin eye/ear drop): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 352 (Mitchmu women spray): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 352 (Mitchmu women spray): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 353 (Centrum Adult 50+ 30's): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 353 (Centrum Adult 50+ 30's): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 354 (Centrum Adult 50+ 60's): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 354 (Centrum Adult 50+ 60's): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 355 (Teen Guard Girls): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 355 (Teen Guard Girls): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 356 (Nativa Multi Time): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 356 (Nativa Multi Time): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 357 (Megyl metronidazole): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 357 (Megyl metronidazole): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 358 (OneGlove pack): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 358 (OneGlove pack): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 359 (Griseofulvin 125mg - 30s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 359 (Griseofulvin 125mg - 30s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 360 (Stalophene 50 (clomifene 50mg) - 10s): Attempting Create.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 360 (Stalophene 50 (clomifene 50mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:01] local.ERROR: Bulk Upload Row 361 (Tranalion 500 (Tranexamic acid 500mg) -10s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 361 (Tranalion 500 (Tranexamic acid 500mg) -10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 362 (Ultra Heat Balm): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 362 (Ultra Heat Balm): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 363 (Olodine (Olopatadine eye drop) - 5mls): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 363 (Olodine (Olopatadine eye drop) - 5mls): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 364 (Silver Nitrate Pencil): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 364 (Silver Nitrate Pencil): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 365 (Lartem suspension - 100ml): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 365 (Lartem suspension - 100ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 366 (amva denk 10/160 strip): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 366 (amva denk 10/160 strip): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 367 (losagen 50): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 367 (losagen 50): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 368 (losagen 100): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 368 (losagen 100): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 369 (kidflame): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 369 (kidflame): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 370 (alimox): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 370 (alimox): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 371 (lingers lactate 1000ml): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 371 (lingers lactate 1000ml): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 372 (carbamazepine 200mg 30's): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 372 (carbamazepine 200mg 30's): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 373 (Valupak Vitamin B complex): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 373 (Valupak Vitamin B complex): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 374 (Valupak Brewers Yeast 120s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 374 (Valupak Brewers Yeast 120s): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 375 (Valupak C Chewable 500mg): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 375 (Valupak C Chewable 500mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 376 (Valupak Children OAD 30s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 376 (Valupak Children OAD 30s): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 377 (Valupak B6 50mg 30s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 377 (Valupak B6 50mg 30s): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 378 (All Is Well Ashwagandah caps): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 378 (All Is Well Ashwagandah caps): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 379 (All is Well Tumeric powder): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 379 (All is Well Tumeric powder): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 380 (All Is Well Chia Seeds Capsules): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 380 (All Is Well Chia Seeds Capsules): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 381 (All Is Well Chia Seeds Powder): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 381 (All Is Well Chia Seeds Powder): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 382 (Vomatil (Metoclopramide Hydrochloride 10mg) - 10s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 382 (Vomatil (Metoclopramide Hydrochloride 10mg) - 10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 383 (Flucoz 200 (fluconazole 200mg capsules) - 10s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 383 (Flucoz 200 (fluconazole 200mg capsules) - 10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 384 (moleben cetrizine&montelukast): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 384 (moleben cetrizine&montelukast): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 385 (glycodex dry syrup): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 385 (glycodex dry syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 386 (glycodex c expectorant): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 386 (glycodex c expectorant): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 387 (panado extra 20's): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 387 (panado extra 20's): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 388 (klodip amlodine 10mg): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 388 (klodip amlodine 10mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 389 (Recare Lubricant): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 389 (Recare Lubricant): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 390 (Recare pregnance Kit test Pen): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 390 (Recare pregnance Kit test Pen): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 391 (Recare pregnancy Kit Cassette): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 391 (Recare pregnancy Kit Cassette): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 392 (Recare Pregnance Test Kit): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 392 (Recare Pregnance Test Kit): Duplicate detected in database attempt.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 393 (Salbutamol Strip 10s): Attempting Create.  
[2026-05-16 18:00:02] local.ERROR: Bulk Upload Row 393 (Salbutamol Strip 10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 394 (Benzac 2.5%): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 394 (Benzac 2.5%): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 395 (Letiracetam 500mg tablets 10's): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 395 (Letiracetam 500mg tablets 10's): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 396 (Syndopa Plus[Levodopa &Carbidopa] 15'S): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 396 (Syndopa Plus[Levodopa &Carbidopa] 15'S): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 397 (Lysiprin 500 ( Levetiracetam 500mg tablets) - 10s): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 397 (Lysiprin 500 ( Levetiracetam 500mg tablets) - 10s): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 398 (Restore T-Plus powder): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 398 (Restore T-Plus powder): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 399 (Restore Tea 100g): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 399 (Restore Tea 100g): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 400 (Levosma Syrup): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 400 (Levosma Syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 401 (I-Pill): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 401 (I-Pill): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 402 (Tamsumac 04 capsule): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 402 (Tamsumac 04 capsule): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 403 (Ketazol cream 15mg): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 403 (Ketazol cream 15mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 404 (Lum-Artem syrup): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 404 (Lum-Artem syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 405 (Max b reduced): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 405 (Max b reduced): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 406 (Max reduced): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 406 (Max reduced): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 407 (Nivea Spray assorted): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 407 (Nivea Spray assorted): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 408 (Hydrogen Peroxide 3%): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 408 (Hydrogen Peroxide 3%): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 409 (Pinotex Diapers XL): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 409 (Pinotex Diapers XL): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 410 (Tricofen 150mg Depo): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 410 (Tricofen 150mg Depo): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 411 (Nervilin 150mg per strip): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 411 (Nervilin 150mg per strip): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 412 (Oscar Malaria  Self Test Kit): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 412 (Oscar Malaria  Self Test Kit): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 413 (Lil-lets pantyliners Scented 25's): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 413 (Lil-lets pantyliners Scented 25's): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 414 (Lil-lets Pantyliners Unsented 25's): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 414 (Lil-lets Pantyliners Unsented 25's): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 415 (Ef-Cheor tablets): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 415 (Ef-Cheor tablets): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 416 (Vomikind-MD 4 Ondansetron): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 416 (Vomikind-MD 4 Ondansetron): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 417 (Valupak Pregnancy): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 417 (Valupak Pregnancy): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 418 (Nefin 20 ER Nifedipine): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 418 (Nefin 20 ER Nifedipine): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 419 (Vagid pessary 100mg): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 419 (Vagid pessary 100mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 420 (Vustan Atorvastatin 20mg): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 420 (Vustan Atorvastatin 20mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 421 (Elbow support): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 421 (Elbow support): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 422 (Pranaa bio): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 422 (Pranaa bio): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 423 (Ispaghula Husk orange flavour/1): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 423 (Ispaghula Husk orange flavour/1): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 424 (Femagene intimate soothing gel): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 424 (Femagene intimate soothing gel): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 425 (Leben Whitefield oint): Attempting Create.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 425 (Leben Whitefield oint): Duplicate detected in database attempt.  
[2026-05-16 18:00:03] local.ERROR: Bulk Upload Row 426 (Celia Cefuroxime syrup): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 426 (Celia Cefuroxime syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 427 (Dynamic Amoxyl syrup): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 427 (Dynamic Amoxyl syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 428 (Back up pill): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 428 (Back up pill): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 429 (Shalzin azithromycin syrup): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 429 (Shalzin azithromycin syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 430 (Red Janthropha powder): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 430 (Red Janthropha powder): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 431 (Molinga Tea bags): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 431 (Molinga Tea bags): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 432 (All is well Garlic and Ginger powder): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 432 (All is well Garlic and Ginger powder): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 433 (Celtic D Drops): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 433 (Celtic D Drops): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 434 (Caltoc D capsules): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 434 (Caltoc D capsules): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 435 (Vitogem multivitamin syrup): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 435 (Vitogem multivitamin syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 436 (Warmectin Melbendazole syrup): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 436 (Warmectin Melbendazole syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 437 (HCG Test Kit): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 437 (HCG Test Kit): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 438 (Emisen solution ondansetron): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 438 (Emisen solution ondansetron): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 439 (Gut Active Capsules Pre Probiotic): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 439 (Gut Active Capsules Pre Probiotic): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 440 (Gut Active Syrup): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 440 (Gut Active Syrup): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 441 (Myconova susp.Nystatin): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 441 (Myconova susp.Nystatin): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 442 (Rapiduco Lactulos): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 442 (Rapiduco Lactulos): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 443 (Vomikind Ondansetron 8mg): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 443 (Vomikind Ondansetron 8mg): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 444 (Freshen Display Card): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 444 (Freshen Display Card): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 445 (Bodicare Apple Cider Vinegar): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 445 (Bodicare Apple Cider Vinegar): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 446 (Cromopar Cromoglycate Sodium): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 446 (Cromopar Cromoglycate Sodium): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 447 (Fucol-200 Fluconazole): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 447 (Fucol-200 Fluconazole): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 448 (Cardigan AM): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 448 (Cardigan AM): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 449 (Frusemide 40mg 10's): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 449 (Frusemide 40mg 10's): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 450 (Labclav 1gm): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 450 (Labclav 1gm): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 451 (Cosmos 500mg tablets): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 451 (Cosmos 500mg tablets): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 452 (Whitefield Ointment Regal): Attempting Create.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Row 452 (Whitefield Ointment Regal): Duplicate detected in database attempt.  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Loop Finished. Total Success: 0, Skipped: 450, Errors: 0  
[2026-05-16 18:00:04] local.ERROR: Bulk Upload Transaction COMMITTED.  
[2026-05-16 18:00:42] local.ERROR: PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected T_NS_SEPARATOR on line 1 at D:/not paid/EDUC/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php // = DB::s...', false)
#2 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('// = DB::select(...', true)
#4 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('// = DB::select(...', true)
#5 D:/not paid/EDUC/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('// = DB::select(...')
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/EDUC/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/EDUC/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-05-16 18:00:51] local.ERROR: PHP Parse error: Syntax error, unexpected ')' on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected ')' on line 1 at D:/not paid/EDUC/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php foreach(D...', false)
#2 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('foreach(DB::sel...', true)
#4 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('foreach(DB::sel...', true)
#5 D:/not paid/EDUC/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('foreach(DB::sel...')
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/EDUC/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/EDUC/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-05-16 18:01:20] local.ERROR: PHP Parse error: Syntax error, unexpected ')' on line 1 {"exception":"[object] (Psy\\Exception\\ParseErrorException(code: 0): PHP Parse error: Syntax error, unexpected ')' on line 1 at D:/not paid/EDUC/backend/vendor/psy/psysh/src/Exception/ParseErrorException.php:44)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(488): Psy/Exception/ParseErrorException::fromParseError(Object(PhpParser/Error))
#1 D:/not paid/EDUC/backend/vendor/psy/psysh/src/CodeCleaner.php(269): Psy/CodeCleaner->parse('<?php foreach(D...', false)
#2 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1059): Psy/CodeCleaner->clean(Array, false)
#3 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1092): Psy/Shell->addCode('foreach(DB::sel...', true)
#4 D:/not paid/EDUC/backend/vendor/psy/psysh/src/Shell.php(1640): Psy/Shell->setCode('foreach(DB::sel...', true)
#5 D:/not paid/EDUC/backend/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('foreach(DB::sel...')
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#12 D:/not paid/EDUC/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#14 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#15 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#16 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#19 D:/not paid/EDUC/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#20 {main}
"} 
[2026-05-16 18:05:21] local.ERROR: Bulk Upload Row 5: Empty row, skipping.  
[2026-05-16 18:10:16] local.ERROR: Bulk Upload Row 5: Empty row, skipping.  
[2026-05-16 18:12:16] local.ERROR: Maximum execution time of 120 seconds exceeded {"userId":1,"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Maximum execution time of 120 seconds exceeded at D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:427)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(247): Symfony/Component/ErrorHandler/Error/FatalError->__construct(message: ''Maximum execut...', code: '0', error: '['type' => 1, '...', traceOffset: '0', traceArgs: '???', trace: '???')
#1 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(234): Illuminate/Foundation/Bootstrap/HandleExceptions->fatalErrorFromPhpError(error: '['type' => 1, '...', traceOffset: '0')
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleShutdown()
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(0): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure:D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:257-259}()
#4 {main}
"} 
[2026-05-16 18:28:03] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1778948883460","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Amoxicillin 250mg Capsules","sku":"AMX001","price":"15500.00","selling_price":"15500.00","purchase_price":"8750.00","quantity":1,"subtotal":15500,"product":{"id":5,"name":"Amoxicillin 250mg Capsules","business_location":"2","unit_id":3,"category_id":1,"brand_id":2,"supplier_id":null,"purchase_price":"8750.00","last_purchase_price":null,"selling_price":"15500.00","current_stock":"72.00","stock":"100.00","product_type":"Single","tax":null,"sku":"AMX001","image":null,"description":"Antibiotic for bacterial infections","alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-14T19:10:54.000000Z","brand":{"id":2,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:33:40.000000Z","updated_at":"2026-03-05T20:33:40.000000Z"},"category":{"id":1,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:32:49.000000Z","updated_at":"2026-03-05T20:32:49.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-16 18:28:04] local.INFO: Stock deduction for product: Amoxicillin 250mg Capsules  
[2026-05-16 18:28:04] local.INFO: Old stock: 72.00  
[2026-05-16 18:28:04] local.INFO: Quantity deducted: 1  
[2026-05-16 18:28:04] local.INFO: New stock: 71  
[2026-05-16 18:28:04] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1778948883460"} 
[2026-05-19 17:38:54] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779205133676","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"55.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-12T18:50:10.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-19 17:38:54] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-19 17:38:54] local.INFO: Old stock: 55.00  
[2026-05-19 17:38:54] local.INFO: Quantity deducted: 1  
[2026-05-19 17:38:54] local.INFO: New stock: 54  
[2026-05-19 17:38:54] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779205133676"} 
[2026-05-19 17:40:59] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779205258837","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-19T15:38:54.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"bank_transfer"}} 
[2026-05-19 17:40:59] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-19 17:40:59] local.INFO: Old stock: 54.00  
[2026-05-19 17:40:59] local.INFO: Quantity deducted: 1  
[2026-05-19 17:40:59] local.INFO: New stock: 53  
[2026-05-19 17:40:59] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779205258837"} 
[2026-05-19 18:03:45] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779206624963","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-19T15:40:59.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-19 18:03:45] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-19 18:03:45] local.INFO: Old stock: 53.00  
[2026-05-19 18:03:45] local.INFO: Quantity deducted: 1  
[2026-05-19 18:03:45] local.INFO: New stock: 52  
[2026-05-19 18:03:45] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779206624963"} 
[2026-05-23 10:26:34] local.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#1 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('sessions', Object(Closure))
#6 D:/not paid/EDUC/backend/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_26_1142...', Object(Closure))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_26_1142...', Object(Closure))
#14 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('D://not paid//EDU...', 19, false)
#15 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 D:/not paid/EDUC/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 D:/not paid/EDUC/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('create table `s...', Array)
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#4 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#5 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('sessions', Object(Closure))
#8 D:/not paid/EDUC/backend/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_04_26_1142...', Object(Closure))
#15 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_04_26_1142...', Object(Closure))
#16 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('D://not paid//EDU...', 19, false)
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 D:/not paid/EDUC/backend/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 D:/not paid/EDUC/backend/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 D:/not paid/EDUC/backend/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-05-23 11:04:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779527066717","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"52.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-19T16:03:45.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-23 11:04:27] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-23 11:04:27] local.INFO: Old stock: 52.00  
[2026-05-23 11:04:27] local.INFO: Quantity deducted: 1  
[2026-05-23 11:04:27] local.INFO: New stock: 51  
[2026-05-23 11:04:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779527066717"} 
[2026-05-23 11:13:26] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779527605710","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"51.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:04:27.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"cheque","amount":1000}]}} 
[2026-05-23 11:36:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779528995310","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":2,"subtotal":3000,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:13:26.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":300},{"method":"card","amount":2700}]}} 
[2026-05-23 11:37:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779529029978","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:36:35.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-23 11:37:10] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-23 11:37:10] local.INFO: Old stock: 48.00  
[2026-05-23 11:37:10] local.INFO: Quantity deducted: 1  
[2026-05-23 11:37:10] local.INFO: New stock: 47  
[2026-05-23 11:37:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779529029978"} 
[2026-05-23 11:38:33] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779529113263","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:37:10.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-23 11:38:33] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-23 11:38:33] local.INFO: Old stock: 47.00  
[2026-05-23 11:38:33] local.INFO: Quantity deducted: 1  
[2026-05-23 11:38:33] local.INFO: New stock: 46  
[2026-05-23 11:38:33] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779529113263"} 
[2026-05-23 11:54:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779530086993","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:38:33.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-23 11:54:47] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-23 11:54:47] local.INFO: Old stock: 46.00  
[2026-05-23 11:54:47] local.INFO: Quantity deducted: 1  
[2026-05-23 11:54:47] local.INFO: New stock: 45  
[2026-05-23 11:54:47] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779530086993"} 
[2026-05-23 11:56:53] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779530212548","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:54:47.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":1000}]}} 
[2026-05-23 11:59:43] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779530382680","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"44.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:56:53.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-23 11:59:43] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-23 11:59:43] local.INFO: Old stock: 44.00  
[2026-05-23 11:59:43] local.INFO: Quantity deducted: 1  
[2026-05-23 11:59:43] local.INFO: New stock: 43  
[2026-05-23 11:59:43] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779530382680"} 
[2026-05-23 12:00:30] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1779530430450","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"43.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T09:59:43.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-23 12:00:30] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-23 12:00:30] local.INFO: Old stock: 43.00  
[2026-05-23 12:00:30] local.INFO: Quantity deducted: 1  
[2026-05-23 12:00:30] local.INFO: New stock: 42  
[2026-05-23 12:00:30] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779530430450"} 
[2026-05-23 21:11:47] local.INFO: BulkUpload: created or found category {"name":"Pain Killers","id":5,"row":2} 
[2026-05-23 21:11:47] local.INFO: BulkUpload: created or found brand {"name":"Generic","id":5,"row":2} 
[2026-05-23 21:13:20] local.INFO: BulkUpload: using existing category from cache {"name":"Pain Killers","id":5,"row":2} 
[2026-05-23 21:13:20] local.INFO: BulkUpload: using existing brand from cache {"name":"Generic","id":5,"row":2} 
[2026-05-23 21:16:12] local.INFO: BulkUpload: created or found category {"name":"antseptic","id":6,"row":2} 
[2026-05-23 21:16:12] local.INFO: BulkUpload: created or found brand {"name":"Generic2","id":6,"row":2} 
[2026-05-23 21:16:12] local.ERROR: BulkUpload: failed to create unit {"name":"Pack5","error":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'short_name' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `units` (`name`, `short_name`, `allow_decimal`, `updated_at`, `created_at`) values (Pack5, ?, 1, 2026-05-23 21:16:12, 2026-05-23 21:16:12))","row":2} 
[2026-05-23 21:20:39] local.INFO: BulkUpload: using existing category from cache {"name":"antseptic","id":6,"row":2} 
[2026-05-23 21:20:39] local.INFO: BulkUpload: using existing brand from cache {"name":"Generic2","id":6,"row":2} 
[2026-05-23 21:20:39] local.ERROR: BulkUpload: failed to create unit {"name":"Pack5","error":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'short_name' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `units` (`name`, `short_name`, `allow_decimal`, `updated_at`, `created_at`) values (Pack5, ?, 1, 2026-05-23 21:20:39, 2026-05-23 21:20:39))","row":2} 
[2026-05-23 21:20:39] local.INFO: BulkUpload: created or found supplier {"name":"Main Distributor","id":7,"row":2} 
[2026-05-23 21:24:32] local.INFO: BulkUpload: using existing category from cache {"name":"antseptic","id":6,"row":2} 
[2026-05-23 21:24:32] local.INFO: BulkUpload: using existing brand from cache {"name":"Generic2","id":6,"row":2} 
[2026-05-23 21:24:32] local.ERROR: BulkUpload: failed to create unit {"name":"kim","error":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'short_name' cannot be null (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: insert into `units` (`name`, `short_name`, `allow_decimal`, `updated_at`, `created_at`) values (kim, ?, 1, 2026-05-23 21:24:32, 2026-05-23 21:24:32))","row":2} 
[2026-05-23 21:24:32] local.INFO: BulkUpload: using existing supplier from cache {"name":"Main Distributor","id":7,"row":2} 
[2026-05-23 21:26:01] local.INFO: BulkUpload: using existing category from cache {"name":"antseptic","id":6,"row":2} 
[2026-05-23 21:26:01] local.INFO: BulkUpload: using existing brand from cache {"name":"Generic2","id":6,"row":2} 
[2026-05-23 21:26:01] local.INFO: BulkUpload: using existing unit from normalized map {"name":"gram","id":11,"row":2} 
[2026-05-23 21:26:01] local.INFO: BulkUpload: using existing supplier from cache {"name":"Main Distributor","id":7,"row":2} 
[2026-05-23 21:31:46] local.INFO: Stock Adjustment - Initial State {"product_id":"5134","previous_quantity":"0.00","previous_selling_price":"-2.00","validated_data":{"product_id":"5134","adjustment_type":"add","quantity":null,"reason":"test","new_selling_price":"2000.00","new_purchase_price":null,"new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:31:46] local.INFO: Stock Adjustment - After Price-Only Save {"product_id":5134,"new_selling_price":"2000.00","current_stock":"0.00","changes_made":"Prices updated only"} 
[2026-05-23 21:34:46] local.INFO: Stock Adjustment - Initial State {"product_id":"5134","previous_quantity":"0.00","previous_selling_price":"2000.00","validated_data":{"product_id":"5134","adjustment_type":"add","quantity":null,"reason":"test","new_selling_price":"2000.00","new_purchase_price":"1500.00","new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:34:46] local.INFO: Stock Adjustment - After Price-Only Save {"product_id":5134,"new_selling_price":"2000.00","current_stock":"0.00","changes_made":"Prices updated only"} 
[2026-05-23 21:35:53] local.INFO: Stock Adjustment - Initial State {"product_id":"5134","previous_quantity":"0.00","previous_selling_price":"2000.00","validated_data":{"product_id":"5134","adjustment_type":"add","quantity":"10","reason":"test","new_selling_price":"2000.00","new_purchase_price":"1500.00","new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:35:53] local.INFO: Stock Adjustment - After Quantity Save {"product_id":5134,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-05-23 21:45:20] local.INFO: Stock Adjustment - Initial State {"product_id":"1950","previous_quantity":"0.00","previous_selling_price":"0.00","validated_data":{"product_id":"1950","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:45:20] local.INFO: Stock Adjustment - After Quantity Save {"product_id":1950,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-05-23 21:45:45] local.INFO: Stock Adjustment - Initial State {"product_id":"6109","previous_quantity":"0.00","previous_selling_price":"7.00","validated_data":{"product_id":"6109","adjustment_type":"add","quantity":null,"reason":"damaged","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:45:45] local.INFO: Stock Adjustment - After Price-Only Save {"product_id":6109,"new_selling_price":"7.00","current_stock":"0.00","changes_made":"Prices updated only"} 
[2026-05-23 21:46:51] local.INFO: Stock Adjustment - Initial State {"product_id":"6110","previous_quantity":"0.00","previous_selling_price":"-43.00","validated_data":{"product_id":"6110","adjustment_type":"add","quantity":"5","reason":"expired","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:46:51] local.INFO: Stock Adjustment - After Quantity Save {"product_id":6110,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-05-23 21:54:58] local.INFO: Stock Adjustment - Initial State {"product_id":"6890","previous_quantity":"100.00","previous_selling_price":"2500.00","validated_data":{"product_id":"6890","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:54:58] local.INFO: Stock Adjustment - After Quantity Save {"product_id":6890,"new_quantity":112.0,"current_stock":112.0,"changes_made":"Quantity adjusted"} 
[2026-05-23 21:57:46] local.INFO: Stock Adjustment - Initial State {"product_id":"6889","previous_quantity":"100.00","previous_selling_price":"2500.00","validated_data":{"product_id":"6889","adjustment_type":"add","quantity":"6","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-23"}} 
[2026-05-23 21:57:46] local.INFO: Stock Adjustment - After Quantity Save {"product_id":6889,"new_quantity":106.0,"current_stock":106.0,"changes_made":"Quantity adjusted"} 
[2026-05-25 04:09:20] local.ERROR: SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select * from `cache` where `key` in (laravel-cache-rabeccamulinda@gmail.com|127.0.0.1)) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it (Connection: mysql, Host: 127.0.0.1, Port: 3306, Database: pharmacy_pos, SQL: select * from `cache` where `key` in (laravel-cache-rabeccamulinda@gmail.com|127.0.0.1)) at D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate/Database/Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate/Database/Connection->tryAgainIfCausedByLostConnection(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate/Database/Connection->handleQueryException(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select * from `...', Array, Object(Closure))
#4 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select * from `...', Array, true)
#5 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(130): Illuminate/Database/Query/Builder->get()
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(105): Illuminate/Cache/DatabaseStore->many(Array)
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(123): Illuminate/Cache/DatabaseStore->get('rabeccamulinda@...')
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(206): Illuminate/Cache/Repository->get('rabeccamulinda@...', 0)
#12 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(300): Illuminate/Cache/RateLimiter->Illuminate/Cache/{closure}()
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(206): Illuminate/Cache/RateLimiter->withoutSerializationOrCompression(Object(Closure))
#14 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(129): Illuminate/Cache/RateLimiter->attempts('rabeccamulinda@...')
#15 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Cache/RateLimiter->tooManyAttempts('rabeccamulinda@...', 5)
#16 D:/not paid/EDUC/backend/app/Http/Requests/Auth/LoginRequest.php(62): Illuminate/Support/Facades/Facade::__callStatic('tooManyAttempts', Array)
#17 D:/not paid/EDUC/backend/app/Http/Requests/Auth/LoginRequest.php(42): App/Http/Requests/Auth/LoginRequest->ensureIsNotRateLimited()
#18 D:/not paid/EDUC/backend/app/Http/Controllers/Auth/AuthenticatedSessionController.php(27): App/Http/Requests/Auth/LoginRequest->authenticate()
#19 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/Auth/AuthenticatedSessionController->store(Object(App/Http/Requests/Auth/LoginRequest))
#20 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('store', Array)
#21 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/Auth/AuthenticatedSessionController), 'store')
#22 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#23 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#24 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#25 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/RedirectIfAuthenticated.php(47): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/RedirectIfAuthenticated->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#31 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#32 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#35 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#42 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#43 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#44 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#45 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#46 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#47 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#64 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#65 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#66 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#67 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#68 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#69 D:/not paid/EDUC/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#70 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//EDU...')
#71 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] No connection could be made because the target machine actively refused it at D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=127....', 'root', Object(SensitiveParameterValue), Array)
#1 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate/Database/Connectors/Connector->createPdoConnection('mysql:host=127....', 'root', Object(SensitiveParameterValue), Array)
#2 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate/Database/Connectors/Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=127....', 'root', Object(SensitiveParameterValue), Array)
#3 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate/Database/Connectors/Connector->createConnection('mysql:host=127....', Array, Array)
#4 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate/Database/Connectors/MySqlConnector->connect(Array)
#5 [internal function]: Illuminate/Database/Connectors/ConnectionFactory->Illuminate/Database/Connectors/{closure}()
#6 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate/Database/Connection->getPdo()
#8 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate/Database/Connection->getReadPdo()
#9 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate/Database/Connection->getPdoForSelect(true)
#10 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select * from `...', Array)
#11 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate/Database/Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate/Database/Connection->tryAgainIfCausedByLostConnection(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#13 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate/Database/Connection->handleQueryException(Object(Illuminate/Database/QueryException), 'select * from `...', Array, Object(Closure))
#14 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select * from `...', Array, Object(Closure))
#15 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select * from `...', Array, true)
#16 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#17 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#18 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#19 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(130): Illuminate/Database/Query/Builder->get()
#20 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(105): Illuminate/Cache/DatabaseStore->many(Array)
#21 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(123): Illuminate/Cache/DatabaseStore->get('rabeccamulinda@...')
#22 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(206): Illuminate/Cache/Repository->get('rabeccamulinda@...', 0)
#23 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(300): Illuminate/Cache/RateLimiter->Illuminate/Cache/{closure}()
#24 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(206): Illuminate/Cache/RateLimiter->withoutSerializationOrCompression(Object(Closure))
#25 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cache/RateLimiter.php(129): Illuminate/Cache/RateLimiter->attempts('rabeccamulinda@...')
#26 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Cache/RateLimiter->tooManyAttempts('rabeccamulinda@...', 5)
#27 D:/not paid/EDUC/backend/app/Http/Requests/Auth/LoginRequest.php(62): Illuminate/Support/Facades/Facade::__callStatic('tooManyAttempts', Array)
#28 D:/not paid/EDUC/backend/app/Http/Requests/Auth/LoginRequest.php(42): App/Http/Requests/Auth/LoginRequest->ensureIsNotRateLimited()
#29 D:/not paid/EDUC/backend/app/Http/Controllers/Auth/AuthenticatedSessionController.php(27): App/Http/Requests/Auth/LoginRequest->authenticate()
#30 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/Auth/AuthenticatedSessionController->store(Object(App/Http/Requests/Auth/LoginRequest))
#31 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('store', Array)
#32 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/Auth/AuthenticatedSessionController), 'store')
#33 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#34 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#35 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#36 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Auth/Middleware/RedirectIfAuthenticated.php(47): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/RedirectIfAuthenticated->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#46 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#53 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#54 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#55 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#56 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#57 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#58 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#63 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#64 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#65 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#66 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#67 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#68 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#69 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#70 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#71 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#72 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#73 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#74 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#75 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#76 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#77 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#78 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#79 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#80 D:/not paid/EDUC/backend/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#81 D:/not paid/EDUC/backend/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('D://not paid//EDU...')
#82 {main}
"} 
[2026-05-25 05:00:37] local.INFO: Stock Adjustment - Initial State {"product_id":"6866","previous_quantity":"0.00","previous_selling_price":"-2.00","validated_data":{"product_id":"6866","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-05-25"}} 
[2026-05-25 05:00:37] local.INFO: Stock Adjustment - After Quantity Save {"product_id":6866,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-05-25 05:04:04] local.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1779678243590","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6886,"product_id":6886,"name":"panamo","sku":"77777","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":6886,"name":"panamo","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":5,"brand_id":5,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"100.00","stock":"0.00","product_type":"Single","tax":null,"sku":"77777","image":null,"description":"Pain reliever and a fever reducer","alert_quantity":"10.00","expiry_date":"2027-12-31","last_purchase_date":"2026-05-23","created_at":"2026-05-23T19:13:20.000000Z","updated_at":"2026-05-25T02:59:49.000000Z","brand":{"id":5,"name":"Generic","note":null,"created_at":"2026-05-23T19:11:47.000000Z","updated_at":"2026-05-23T19:11:47.000000Z"},"category":{"id":5,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-05-23T19:11:47.000000Z","updated_at":"2026-05-23T19:11:47.000000Z"}}},{"id":6884,"product_id":6884,"name":"jann12","sku":"PRD-0000001","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":6884,"name":"jann12","business_location":"EDUC Pharmacy (BL0001)","unit_id":9,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"100.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-0000001","image":null,"description":"Pain reliever and a fever reducer","alert_quantity":"10.00","expiry_date":"2027-12-31","last_purchase_date":"2026-05-23","created_at":"2026-05-23T10:26:23.000000Z","updated_at":"2026-05-23T10:26:23.000000Z","brand":null,"category":null}},{"id":6866,"product_id":6866,"name":"daco","sku":"Vitogem multivitamin syrup","price":"1000.00","selling_price":"1000.00","purchase_price":"600.00","quantity":1,"subtotal":1000,"product":{"id":6866,"name":"daco","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"600.00","last_purchase_price":"0.00","selling_price":"1000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"Vitogem multivitamin syrup","image":null,"description":"--","alert_quantity":"10.00","expiry_date":"2026-05-25","last_purchase_date":"2026-05-16","created_at":"2026-05-16T16:47:50.000000Z","updated_at":"2026-05-25T03:01:26.000000Z","brand":null,"category":null}},{"id":6889,"product_id":6889,"name":"final","sku":"33","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":6889,"name":"final","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":6,"brand_id":6,"supplier_id":7,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"106.00","stock":"106.00","product_type":"Single","tax":null,"sku":"33","image":null,"description":"Pain reliever and a fever reducer","alert_quantity":"10.00","expiry_date":"2026-05-23","last_purchase_date":"2026-05-23","created_at":"2026-05-23T19:24:32.000000Z","updated_at":"2026-05-23T19:57:46.000000Z","brand":{"id":6,"name":"Generic2","note":null,"created_at":"2026-05-23T19:16:12.000000Z","updated_at":"2026-05-23T19:16:12.000000Z"},"category":{"id":6,"name":"antseptic","category_code":null,"description":null,"created_at":"2026-05-23T19:16:12.000000Z","updated_at":"2026-05-23T19:16:12.000000Z"}}},{"id":6890,"product_id":6890,"name":"final4","sku":"546","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":6890,"name":"final4","business_location":"EDUC Pharmacy (BL0001)","unit_id":11,"category_id":6,"brand_id":6,"supplier_id":7,"purchase_price":"1200.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"112.00","stock":"112.00","product_type":"Single","tax":null,"sku":"546","image":null,"description":"Pain reliever and a fever reducer","alert_quantity":"10.00","expiry_date":"2026-05-23","last_purchase_date":"2026-05-23","created_at":"2026-05-23T19:26:01.000000Z","updated_at":"2026-05-23T19:58:14.000000Z","brand":{"id":6,"name":"Generic2","note":null,"created_at":"2026-05-23T19:16:12.000000Z","updated_at":"2026-05-23T19:16:12.000000Z"},"category":{"id":6,"name":"antseptic","category_code":null,"description":null,"created_at":"2026-05-23T19:16:12.000000Z","updated_at":"2026-05-23T19:16:12.000000Z"}}},{"id":15,"product_id":15,"name":"Bandage Pack 20pcs","sku":"BAN001","price":"1500.00","selling_price":"1500.00","purchase_price":"8000.00","quantity":1,"subtotal":1500,"product":{"id":15,"name":"Bandage Pack 20pcs","business_location":"2","unit_id":13,"category_id":3,"brand_id":4,"supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"42.00","stock":"0.00","product_type":"Single","tax":null,"sku":"BAN001","image":null,"description":"Assorted bandage sizes for wound care","alert_quantity":null,"expiry_date":"2026-03-07","last_purchase_date":null,"created_at":"2026-03-06T09:25:12.000000Z","updated_at":"2026-05-23T10:00:30.000000Z","brand":{"id":4,"name":"Test Brand","note":null,"created_at":"2026-03-05T20:34:37.000000Z","updated_at":"2026-03-05T20:34:37.000000Z"},"category":{"id":3,"name":"Medicine","category_code":null,"description":null,"created_at":"2026-03-05T20:34:12.000000Z","updated_at":"2026-03-05T20:34:12.000000Z"}}}],"payment_method":"cash"}} 
[2026-05-25 05:04:04] local.INFO: Stock deduction for product: panamo  
[2026-05-25 05:04:04] local.INFO: Old stock: 100.00  
[2026-05-25 05:04:04] local.INFO: Quantity deducted: 1  
[2026-05-25 05:04:04] local.INFO: New stock: 99  
[2026-05-25 05:04:04] local.INFO: Stock deduction for product: jann12  
[2026-05-25 05:04:04] local.INFO: Old stock: 100.00  
[2026-05-25 05:04:04] local.INFO: Quantity deducted: 1  
[2026-05-25 05:04:04] local.INFO: New stock: 99  
[2026-05-25 05:04:04] local.INFO: Stock deduction for product: daco  
[2026-05-25 05:04:04] local.INFO: Old stock: 10.00  
[2026-05-25 05:04:04] local.INFO: Quantity deducted: 1  
[2026-05-25 05:04:04] local.INFO: New stock: 9  
[2026-05-25 05:04:04] local.INFO: Stock deduction for product: final  
[2026-05-25 05:04:04] local.INFO: Old stock: 106.00  
[2026-05-25 05:04:04] local.INFO: Quantity deducted: 1  
[2026-05-25 05:04:04] local.INFO: New stock: 105  
[2026-05-25 05:04:04] local.INFO: Stock deduction for product: final4  
[2026-05-25 05:04:04] local.INFO: Old stock: 112.00  
[2026-05-25 05:04:04] local.INFO: Quantity deducted: 1  
[2026-05-25 05:04:04] local.INFO: New stock: 111  
[2026-05-25 05:04:04] local.INFO: Stock deduction for product: Bandage Pack 20pcs  
[2026-05-25 05:04:04] local.INFO: Old stock: 42.00  
[2026-05-25 05:04:04] local.INFO: Quantity deducted: 1  
[2026-05-25 05:04:04] local.INFO: New stock: 41  
[2026-05-25 05:04:04] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1779678243590"} 
[2026-06-01 08:27:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780295231456","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":27,"product_id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","sku":"0659","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0659","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-27T05:30:45.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 08:27:12] local.INFO: Stock deduction for product: ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS  
[2026-06-01 08:27:12] local.INFO: Old stock: 4.00  
[2026-06-01 08:27:12] local.INFO: Quantity deducted: 1  
[2026-06-01 08:27:12] local.INFO: New stock: 3  
[2026-06-01 08:27:12] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780295231456"} 
[2026-06-01 10:58:14] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304295925","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":97,"product_id":97,"name":"BECLEM OINTMENT, 15g","sku":"0693","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":97,"name":"BECLEM OINTMENT, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"28","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0693","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-30T09:27:51.000000Z","brand":{"id":28,"name":"CORAL LOBARATORIES","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 10:58:14] local.INFO: Stock deduction for product: BECLEM OINTMENT, 15g  
[2026-06-01 10:58:14] local.INFO: Old stock: 4.00  
[2026-06-01 10:58:14] local.INFO: Quantity deducted: 1  
[2026-06-01 10:58:14] local.INFO: New stock: 3  
[2026-06-01 10:58:14] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304295925"} 
[2026-06-01 10:59:30] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304370996","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":619,"product_id":619,"name":"P-ALAXIN TS","sku":"3256","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":619,"name":"P-ALAXIN TS","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"30.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3256","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-04-30T04:41:32.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 10:59:30] local.INFO: Stock deduction for product: P-ALAXIN TS  
[2026-06-01 10:59:30] local.INFO: Old stock: 30.00  
[2026-06-01 10:59:30] local.INFO: Quantity deducted: 1  
[2026-06-01 10:59:30] local.INFO: New stock: 29  
[2026-06-01 10:59:30] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304370996"} 
[2026-06-01 11:00:03] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304404956","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3000.00","selling_price":"3000.00","purchase_price":"1560.00","quantity":1,"subtotal":3000,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-27T09:55:01.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 11:00:03] local.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-06-01 11:00:03] local.INFO: Old stock: 2.00  
[2026-06-01 11:00:03] local.INFO: Quantity deducted: 1  
[2026-06-01 11:00:03] local.INFO: New stock: 1  
[2026-06-01 11:00:03] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304404956"} 
[2026-06-01 11:00:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304434076","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":139,"product_id":139,"name":"Bromsal (Bronchodilator Mucolytic)","sku":"1350","price":"8000.00","selling_price":"8000.00","purchase_price":"3750.00","quantity":1,"subtotal":8000,"product":{"id":139,"name":"Bromsal (Bronchodilator Mucolytic)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"3750.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1350","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-03-06T00:13:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 11:00:32] local.INFO: Stock deduction for product: Bromsal (Bronchodilator Mucolytic)  
[2026-06-01 11:00:32] local.INFO: Old stock: 5.00  
[2026-06-01 11:00:32] local.INFO: Quantity deducted: 1  
[2026-06-01 11:00:32] local.INFO: New stock: 4  
[2026-06-01 11:00:32] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304434076"} 
[2026-06-01 11:01:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304482835","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":2,"subtotal":8000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"54.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:39:25.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 11:01:21] local.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-01 11:01:21] local.INFO: Old stock: 54.00  
[2026-06-01 11:01:21] local.INFO: Quantity deducted: 2  
[2026-06-01 11:01:21] local.INFO: New stock: 52  
[2026-06-01 11:01:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304482835"} 
[2026-06-01 11:03:22] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304602891","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"460.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T06:53:58.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:03:22] local.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-01 11:03:22] local.INFO: Old stock: 460.00  
[2026-06-01 11:03:22] local.INFO: Quantity deducted: 6  
[2026-06-01 11:03:22] local.INFO: New stock: 454  
[2026-06-01 11:03:22] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304602891"} 
[2026-06-01 11:03:42] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304623843","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"193.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T01:25:24.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:03:42] local.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-01 11:03:42] local.INFO: Old stock: 193.00  
[2026-06-01 11:03:42] local.INFO: Quantity deducted: 1  
[2026-06-01 11:03:42] local.INFO: New stock: 192  
[2026-06-01 11:03:42] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304623843"} 
[2026-06-01 11:04:17] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304658867","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"52.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T09:01:21.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:04:17] local.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-01 11:04:17] local.INFO: Old stock: 52.00  
[2026-06-01 11:04:17] local.INFO: Quantity deducted: 1  
[2026-06-01 11:04:17] local.INFO: New stock: 51  
[2026-06-01 11:04:17] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304658867"} 
[2026-06-01 11:06:14] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304774914","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"22.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-05-30T07:41:39.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:06:14] local.INFO: Stock deduction for product: Iduplus  
[2026-06-01 11:06:14] local.INFO: Old stock: 22.00  
[2026-06-01 11:06:14] local.INFO: Quantity deducted: 1  
[2026-06-01 11:06:14] local.INFO: New stock: 21  
[2026-06-01 11:06:14] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304774914"} 
[2026-06-01 11:07:44] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304865418","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":12,"subtotal":4800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"53.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-30T01:25:49.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:07:44] local.INFO: Stock deduction for product: Panadol Extra  
[2026-06-01 11:07:44] local.INFO: Old stock: 53.00  
[2026-06-01 11:07:44] local.INFO: Quantity deducted: 12  
[2026-06-01 11:07:44] local.INFO: New stock: 41  
[2026-06-01 11:07:44] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304865418"} 
[2026-06-01 11:08:46] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780304928282","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"49.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-29T12:03:25.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:08:47] local.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-01 11:08:47] local.INFO: Old stock: 49.00  
[2026-06-01 11:08:47] local.INFO: Quantity deducted: 1  
[2026-06-01 11:08:47] local.INFO: New stock: 48  
[2026-06-01 11:08:47] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780304928282"} 
[2026-06-01 11:22:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780305728264","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":735,"product_id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","sku":"3372","price":"17000.00","selling_price":"17000.00","purchase_price":"8000.00","quantity":1,"subtotal":17000,"product":{"id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"6","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"17000.00","current_stock":"5.01","stock":"5.01","product_type":"Single","tax":null,"sku":"3372","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-26T07:43:33.000000Z","brand":{"id":6,"name":"100ML","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 11:22:07] local.INFO: Stock deduction for product: TRIPHEN PAEDIATRIC, 100ml  
[2026-06-01 11:22:07] local.INFO: Old stock: 5.01  
[2026-06-01 11:22:07] local.INFO: Quantity deducted: 1  
[2026-06-01 11:22:07] local.INFO: New stock: 4.01  
[2026-06-01 11:22:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780305728264"} 
[2026-06-01 11:22:46] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780305767911","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"68.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-28T07:57:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:22:46] local.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-01 11:22:46] local.INFO: Old stock: 68.00  
[2026-06-01 11:22:46] local.INFO: Quantity deducted: 1  
[2026-06-01 11:22:46] local.INFO: New stock: 67  
[2026-06-01 11:22:46] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780305767911"} 
[2026-06-01 11:24:08] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780305849135","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-28T10:33:11.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:24:08] local.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-01 11:24:08] local.INFO: Old stock: 11.00  
[2026-06-01 11:24:08] local.INFO: Quantity deducted: 2  
[2026-06-01 11:24:08] local.INFO: New stock: 9  
[2026-06-01 11:24:08] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780305849135"} 
[2026-06-01 11:24:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780305868654","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"33.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-30T09:29:37.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:24:27] local.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-01 11:24:27] local.INFO: Old stock: 33.00  
[2026-06-01 11:24:27] local.INFO: Quantity deducted: 1  
[2026-06-01 11:24:27] local.INFO: New stock: 32  
[2026-06-01 11:24:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780305868654"} 
[2026-06-01 11:25:09] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780305911294","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"103.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-30T01:25:24.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:25:10] local.INFO: Stock deduction for product: HEDAX  
[2026-06-01 11:25:10] local.INFO: Old stock: 103.00  
[2026-06-01 11:25:10] local.INFO: Quantity deducted: 1  
[2026-06-01 11:25:10] local.INFO: New stock: 102  
[2026-06-01 11:25:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780305911294"} 
[2026-06-01 11:28:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306113045","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":528,"product_id":528,"name":"LOSARTAN POTASSIUM","sku":"3165","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":528,"name":"LOSARTAN POTASSIUM","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"51.00","stock":"51.00","product_type":"Single","tax":null,"sku":"3165","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-27T10:30:20.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:28:32] local.INFO: Stock deduction for product: LOSARTAN POTASSIUM  
[2026-06-01 11:28:32] local.INFO: Old stock: 51.00  
[2026-06-01 11:28:32] local.INFO: Quantity deducted: 2  
[2026-06-01 11:28:32] local.INFO: New stock: 49  
[2026-06-01 11:28:32] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306113045"} 
[2026-06-01 11:29:09] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306150301","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-28T10:26:33.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:29:09] local.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-01 11:29:09] local.INFO: Old stock: 18.00  
[2026-06-01 11:29:09] local.INFO: Quantity deducted: 1  
[2026-06-01 11:29:09] local.INFO: New stock: 17  
[2026-06-01 11:29:09] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306150301"} 
[2026-06-01 11:31:56] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306317941","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"78.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-05-28T08:03:32.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:31:56] local.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-01 11:31:56] local.INFO: Old stock: 78.00  
[2026-06-01 11:31:56] local.INFO: Quantity deducted: 1  
[2026-06-01 11:31:56] local.INFO: New stock: 77  
[2026-06-01 11:31:56] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306317941"} 
[2026-06-01 11:32:20] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306341645","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"40.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T07:13:18.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:32:20] local.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 11:32:20] local.INFO: Old stock: 40.00  
[2026-06-01 11:32:20] local.INFO: Quantity deducted: 1  
[2026-06-01 11:32:20] local.INFO: New stock: 39  
[2026-06-01 11:32:20] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306341645"} 
[2026-06-01 11:32:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306368589","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":511,"product_id":511,"name":"Lisinopril 10mg","sku":"3148","price":"5500.00","selling_price":"5500.00","purchase_price":"2950.00","quantity":1,"subtotal":5500,"product":{"id":511,"name":"Lisinopril 10mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3148","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-04T06:28:32.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:32:47] local.INFO: Stock deduction for product: Lisinopril 10mg  
[2026-06-01 11:32:47] local.INFO: Old stock: 10.00  
[2026-06-01 11:32:47] local.INFO: Quantity deducted: 1  
[2026-06-01 11:32:47] local.INFO: New stock: 9  
[2026-06-01 11:32:47] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306368589"} 
[2026-06-01 11:33:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306391668","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":2,"subtotal":8000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"51.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T09:04:17.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:33:10] local.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-01 11:33:10] local.INFO: Old stock: 51.00  
[2026-06-01 11:33:10] local.INFO: Quantity deducted: 2  
[2026-06-01 11:33:10] local.INFO: New stock: 49  
[2026-06-01 11:33:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306391668"} 
[2026-06-01 11:34:39] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306480260","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":673,"product_id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","sku":"3310","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-03-06T01:15:25.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:34:39] local.INFO: Stock deduction for product: RUFENAC GEL (Diclofenac gel), 30g  
[2026-06-01 11:34:39] local.INFO: Old stock: 5.00  
[2026-06-01 11:34:39] local.INFO: Quantity deducted: 1  
[2026-06-01 11:34:39] local.INFO: New stock: 4  
[2026-06-01 11:34:39] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306480260"} 
[2026-06-01 11:36:41] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306601004","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":433,"product_id":433,"name":"Griseofulvin 500 mg","sku":"3070","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":433,"name":"Griseofulvin 500 mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"15","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"17.00","stock":"18.00","product_type":"Single","tax":null,"sku":"3070","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-24T11:42:17.000000Z","brand":null,"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:36:41] local.INFO: Stock deduction for product: Griseofulvin 500 mg  
[2026-06-01 11:36:41] local.INFO: Old stock: 17.00  
[2026-06-01 11:36:41] local.INFO: Quantity deducted: 1  
[2026-06-01 11:36:41] local.INFO: New stock: 16  
[2026-06-01 11:36:41] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306601004"} 
[2026-06-01 11:37:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306631500","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"124.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T01:26:15.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:37:10] local.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-01 11:37:10] local.INFO: Old stock: 124.00  
[2026-06-01 11:37:10] local.INFO: Quantity deducted: 1  
[2026-06-01 11:37:10] local.INFO: New stock: 123  
[2026-06-01 11:37:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306631500"} 
[2026-06-01 11:37:57] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306678435","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"189.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-29T11:36:56.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 11:37:57] local.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-01 11:37:57] local.INFO: Old stock: 189.00  
[2026-06-01 11:37:57] local.INFO: Quantity deducted: 1  
[2026-06-01 11:37:57] local.INFO: New stock: 188  
[2026-06-01 11:37:57] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306678435"} 
[2026-06-01 11:38:36] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306718083","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"39.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:32:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:38:36] local.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 11:38:36] local.INFO: Old stock: 39.00  
[2026-06-01 11:38:36] local.INFO: Quantity deducted: 1  
[2026-06-01 11:38:36] local.INFO: New stock: 38  
[2026-06-01 11:38:36] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306718083"} 
[2026-06-01 11:39:13] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306754339","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"38.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:38:36.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:39:13] local.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 11:39:13] local.INFO: Old stock: 38.00  
[2026-06-01 11:39:13] local.INFO: Quantity deducted: 1  
[2026-06-01 11:39:13] local.INFO: New stock: 37  
[2026-06-01 11:39:13] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306754339"} 
[2026-06-01 11:39:41] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306782731","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"14.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-27T01:04:00.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:39:41] local.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-01 11:39:41] local.INFO: Old stock: 14.00  
[2026-06-01 11:39:41] local.INFO: Quantity deducted: 1  
[2026-06-01 11:39:41] local.INFO: New stock: 13  
[2026-06-01 11:39:41] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306782731"} 
[2026-06-01 11:40:10] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306811835","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":74,"product_id":74,"name":"ANTIHIST CREAM (Mepyramine Maleate 2.0% w/w), 20g","sku":"0892","price":"2500.00","selling_price":"2500.00","purchase_price":"1150.00","quantity":1,"subtotal":2500,"product":{"id":74,"name":"ANTIHIST CREAM (Mepyramine Maleate 2.0% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1150.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0892","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-27T10:03:10.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:40:10] local.INFO: Stock deduction for product: ANTIHIST CREAM (Mepyramine Maleate 2.0% w/w), 20g  
[2026-06-01 11:40:10] local.INFO: Old stock: 19.00  
[2026-06-01 11:40:10] local.INFO: Quantity deducted: 1  
[2026-06-01 11:40:10] local.INFO: New stock: 18  
[2026-06-01 11:40:10] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306811835"} 
[2026-06-01 11:40:48] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306849315","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"25.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-04-14T12:27:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:40:48] local.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-01 11:40:48] local.INFO: Old stock: 25.00  
[2026-06-01 11:40:48] local.INFO: Quantity deducted: 1  
[2026-06-01 11:40:48] local.INFO: New stock: 24  
[2026-06-01 11:40:48] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306849315"} 
[2026-06-01 11:41:17] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306878867","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"18.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-30T05:21:09.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:41:17] local.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-06-01 11:41:17] local.INFO: Old stock: 18.00  
[2026-06-01 11:41:17] local.INFO: Quantity deducted: 1  
[2026-06-01 11:41:17] local.INFO: New stock: 17  
[2026-06-01 11:41:17] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306878867"} 
[2026-06-01 11:42:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306941434","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":3,"subtotal":3000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"27.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-05-22T08:49:00.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:42:21] local.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-01 11:42:21] local.INFO: Old stock: 27.00  
[2026-06-01 11:42:21] local.INFO: Quantity deducted: 3  
[2026-06-01 11:42:21] local.INFO: New stock: 24  
[2026-06-01 11:42:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306941434"} 
[2026-06-01 11:42:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306969290","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":514,"product_id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","sku":"3151","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":2,"subtotal":1000,"product":{"id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3151","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-30T08:30:32.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:42:47] local.INFO: Stock deduction for product: LOFNAC (DICLOFENAC 50MG) TABLETS  
[2026-06-01 11:42:47] local.INFO: Old stock: 15.00  
[2026-06-01 11:42:47] local.INFO: Quantity deducted: 2  
[2026-06-01 11:42:47] local.INFO: New stock: 13  
[2026-06-01 11:42:47] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306969290"} 
[2026-06-01 11:43:09] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780306990330","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"20.00","stock":"67.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-28T10:19:25.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-01 11:43:09] local.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-01 11:43:09] local.INFO: Old stock: 20.00  
[2026-06-01 11:43:09] local.INFO: Quantity deducted: 1  
[2026-06-01 11:43:09] local.INFO: New stock: 19  
[2026-06-01 11:43:09] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780306990330"} 
[2026-06-01 11:43:44] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307025498","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":771,"product_id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","sku":"3408","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","business_location":"EDUC Pharmacy","unit_id":"31","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3408","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-17T06:30:12.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:43:44] local.INFO: Stock deduction for product: Xonase Junior Drop (Xylometazoline 0.05%)  
[2026-06-01 11:43:44] local.INFO: Old stock: 11.00  
[2026-06-01 11:43:44] local.INFO: Quantity deducted: 1  
[2026-06-01 11:43:44] local.INFO: New stock: 10  
[2026-06-01 11:43:44] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307025498"} 
[2026-06-01 11:44:13] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307055002","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-26T07:52:31.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:44:13] local.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-06-01 11:44:13] local.INFO: Old stock: 5.00  
[2026-06-01 11:44:13] local.INFO: Quantity deducted: 1  
[2026-06-01 11:44:13] local.INFO: New stock: 4  
[2026-06-01 11:44:13] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307055002"} 
[2026-06-01 11:44:40] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307082250","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-05-25T10:10:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:44:40] local.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-06-01 11:44:40] local.INFO: Old stock: 7.00  
[2026-06-01 11:44:40] local.INFO: Quantity deducted: 1  
[2026-06-01 11:44:40] local.INFO: New stock: 6  
[2026-06-01 11:44:40] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307082250"} 
[2026-06-01 11:46:51] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307212425","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"86.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-30T01:25:49.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:46:51] local.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-01 11:46:51] local.INFO: Old stock: 86.00  
[2026-06-01 11:46:51] local.INFO: Quantity deducted: 1  
[2026-06-01 11:46:51] local.INFO: New stock: 85  
[2026-06-01 11:46:51] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307212425"} 
[2026-06-01 11:49:47] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307388097","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":212,"product_id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","sku":"0732","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"6.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0732","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-19T08:30:04.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:49:48] local.INFO: Stock deduction for product: DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml  
[2026-06-01 11:49:48] local.INFO: Old stock: 6.00  
[2026-06-01 11:49:48] local.INFO: Quantity deducted: 1  
[2026-06-01 11:49:48] local.INFO: New stock: 5  
[2026-06-01 11:49:48] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307388097"} 
[2026-06-01 11:52:48] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307569313","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":514,"product_id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","sku":"3151","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":1,"subtotal":500,"product":{"id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3151","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:42:47.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:52:48] local.INFO: Stock deduction for product: LOFNAC (DICLOFENAC 50MG) TABLETS  
[2026-06-01 11:52:48] local.INFO: Old stock: 13.00  
[2026-06-01 11:52:48] local.INFO: Quantity deducted: 1  
[2026-06-01 11:52:48] local.INFO: New stock: 12  
[2026-06-01 11:52:48] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307569313"} 
[2026-06-01 11:53:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307594184","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"67.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-30T01:26:23.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:53:12] local.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-01 11:53:12] local.INFO: Old stock: 67.00  
[2026-06-01 11:53:12] local.INFO: Quantity deducted: 1  
[2026-06-01 11:53:12] local.INFO: New stock: 66  
[2026-06-01 11:53:12] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307594184"} 
[2026-06-01 11:53:40] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307621624","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"700.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"43.00","stock":"43.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-30T09:10:40.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:53:40] local.INFO: Stock deduction for product: DOXY CAPSULES (Doxycycline 100mg)  
[2026-06-01 11:53:40] local.INFO: Old stock: 43.00  
[2026-06-01 11:53:40] local.INFO: Quantity deducted: 1  
[2026-06-01 11:53:40] local.INFO: New stock: 42  
[2026-06-01 11:53:40] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307621624"} 
[2026-06-01 11:56:59] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307819992","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":460,"product_id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","sku":"3097","price":"4500.00","selling_price":"4500.00","purchase_price":"1800.00","quantity":1,"subtotal":4500,"product":{"id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"10","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"7.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3097","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-15T13:26:57.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 11:56:59] local.INFO: Stock deduction for product: IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml  
[2026-06-01 11:56:59] local.INFO: Old stock: 7.00  
[2026-06-01 11:56:59] local.INFO: Quantity deducted: 1  
[2026-06-01 11:56:59] local.INFO: New stock: 6  
[2026-06-01 11:56:59] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307819992"} 
[2026-06-01 11:58:38] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307919391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":754,"product_id":754,"name":"Vifex Syrup","sku":"3391","price":"10000.00","selling_price":"10000.00","purchase_price":"4850.00","quantity":1,"subtotal":10000,"product":{"id":754,"name":"Vifex Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4850.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3391","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-20T06:15:52.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-01 11:58:38] local.INFO: Stock deduction for product: Vifex Syrup  
[2026-06-01 11:58:38] local.INFO: Old stock: 8.00  
[2026-06-01 11:58:38] local.INFO: Quantity deducted: 1  
[2026-06-01 11:58:38] local.INFO: New stock: 7  
[2026-06-01 11:58:38] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307919391"} 
[2026-06-01 11:59:32] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307973679","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":673,"product_id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","sku":"3310","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:34:39.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 11:59:32] local.INFO: Stock deduction for product: RUFENAC GEL (Diclofenac gel), 30g  
[2026-06-01 11:59:32] local.INFO: Old stock: 4.00  
[2026-06-01 11:59:32] local.INFO: Quantity deducted: 1  
[2026-06-01 11:59:32] local.INFO: New stock: 3  
[2026-06-01 11:59:32] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307973679"} 
[2026-06-01 11:59:57] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780307998879","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"13.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T09:39:41.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 11:59:57] local.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-01 11:59:57] local.INFO: Old stock: 13.00  
[2026-06-01 11:59:57] local.INFO: Quantity deducted: 1  
[2026-06-01 11:59:57] local.INFO: New stock: 12  
[2026-06-01 11:59:57] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780307998879"} 
[2026-06-01 12:00:30] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308031590","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"85.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T09:46:51.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:00:30] local.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-01 12:00:30] local.INFO: Old stock: 85.00  
[2026-06-01 12:00:30] local.INFO: Quantity deducted: 1  
[2026-06-01 12:00:30] local.INFO: New stock: 84  
[2026-06-01 12:00:30] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308031590"} 
[2026-06-01 12:01:12] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308074142","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:24:08.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:01:12] local.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-01 12:01:12] local.INFO: Old stock: 9.00  
[2026-06-01 12:01:12] local.INFO: Quantity deducted: 2  
[2026-06-01 12:01:12] local.INFO: New stock: 7  
[2026-06-01 12:01:12] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308074142"} 
[2026-06-01 12:01:49] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308110638","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"2.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-28T04:58:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:01:49] local.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-01 12:01:49] local.INFO: Old stock: 2.00  
[2026-06-01 12:01:49] local.INFO: Quantity deducted: 1  
[2026-06-01 12:01:49] local.INFO: New stock: 1  
[2026-06-01 12:01:49] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308110638"} 
[2026-06-01 12:02:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308148366","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"7.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-30T06:33:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:02:27] local.INFO: Stock deduction for product: HIV Test kit  
[2026-06-01 12:02:27] local.INFO: Old stock: 7.00  
[2026-06-01 12:02:27] local.INFO: Quantity deducted: 1  
[2026-06-01 12:02:27] local.INFO: New stock: 6  
[2026-06-01 12:02:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308148366"} 
[2026-06-01 12:02:46] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308168182","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"37.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:39:13.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:02:46] local.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 12:02:46] local.INFO: Old stock: 37.00  
[2026-06-01 12:02:46] local.INFO: Quantity deducted: 1  
[2026-06-01 12:02:46] local.INFO: New stock: 36  
[2026-06-01 12:02:46] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308168182"} 
[2026-06-01 12:03:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308202782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":58,"product_id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","sku":"0672","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0672","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-21T09:19:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:03:21] local.INFO: Stock deduction for product: AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB  
[2026-06-01 12:03:21] local.INFO: Old stock: 15.00  
[2026-06-01 12:03:21] local.INFO: Quantity deducted: 1  
[2026-06-01 12:03:21] local.INFO: New stock: 14  
[2026-06-01 12:03:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308202782"} 
[2026-06-01 12:10:00] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308601877","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":72,"product_id":72,"name":"Antagit DS Gel 170 ml","sku":"1183","price":"9000.00","selling_price":"9000.00","purchase_price":"4250.00","quantity":1,"subtotal":9000,"product":{"id":72,"name":"Antagit DS Gel 170 ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4250.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1183","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-06T00:11:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 12:10:00] local.INFO: Stock deduction for product: Antagit DS Gel 170 ml  
[2026-06-01 12:10:00] local.INFO: Old stock: 3.00  
[2026-06-01 12:10:00] local.INFO: Quantity deducted: 1  
[2026-06-01 12:10:00] local.INFO: New stock: 2  
[2026-06-01 12:10:00] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308601877"} 
[2026-06-01 12:10:20] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308621900","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"36.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T10:02:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 12:10:20] local.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 12:10:20] local.INFO: Old stock: 36.00  
[2026-06-01 12:10:20] local.INFO: Quantity deducted: 1  
[2026-06-01 12:10:20] local.INFO: New stock: 35  
[2026-06-01 12:10:20] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308621900"} 
[2026-06-01 12:10:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308636660","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"21.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-01T09:06:14.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:10:35] local.INFO: Stock deduction for product: Iduplus  
[2026-06-01 12:10:35] local.INFO: Old stock: 21.00  
[2026-06-01 12:10:35] local.INFO: Quantity deducted: 1  
[2026-06-01 12:10:35] local.INFO: New stock: 20  
[2026-06-01 12:10:35] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308636660"} 
[2026-06-01 12:10:52] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308654148","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T10:01:12.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:10:52] local.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-01 12:10:52] local.INFO: Old stock: 7.00  
[2026-06-01 12:10:52] local.INFO: Quantity deducted: 2  
[2026-06-01 12:10:52] local.INFO: New stock: 5  
[2026-06-01 12:10:52] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308654148"} 
[2026-06-01 12:11:11] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308672340","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"38.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-22T02:00:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:11:11] local.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-01 12:11:11] local.INFO: Old stock: 38.00  
[2026-06-01 12:11:11] local.INFO: Quantity deducted: 1  
[2026-06-01 12:11:11] local.INFO: New stock: 37  
[2026-06-01 12:11:11] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308672340"} 
[2026-06-01 12:11:34] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308695940","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"106.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-30T09:43:22.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:11:34] local.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-01 12:11:34] local.INFO: Old stock: 106.00  
[2026-06-01 12:11:34] local.INFO: Quantity deducted: 1  
[2026-06-01 12:11:34] local.INFO: New stock: 105  
[2026-06-01 12:11:34] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308695940"} 
[2026-06-01 12:11:56] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308718068","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":220,"product_id":220,"name":"Dazel Kit","sku":"1281","price":"32000.00","selling_price":"32000.00","purchase_price":"15000.00","quantity":1,"subtotal":32000,"product":{"id":220,"name":"Dazel Kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"7","brand_id":"9","supplier_id":null,"purchase_price":"15000.00","last_purchase_price":null,"selling_price":"32000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-28T09:05:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 12:11:56] local.INFO: Stock deduction for product: Dazel Kit  
[2026-06-01 12:11:56] local.INFO: Old stock: 11.00  
[2026-06-01 12:11:56] local.INFO: Quantity deducted: 1  
[2026-06-01 12:11:56] local.INFO: New stock: 10  
[2026-06-01 12:11:56] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308718068"} 
[2026-06-01 12:14:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308847707","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"67.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T09:22:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:14:07] local.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-01 12:14:07] local.INFO: Old stock: 67.00  
[2026-06-01 12:14:07] local.INFO: Quantity deducted: 1  
[2026-06-01 12:14:07] local.INFO: New stock: 66  
[2026-06-01 12:14:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308847707"} 
[2026-06-01 12:15:18] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308919988","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T09:44:13.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 12:15:18] local.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-06-01 12:15:18] local.INFO: Old stock: 4.00  
[2026-06-01 12:15:18] local.INFO: Quantity deducted: 1  
[2026-06-01 12:15:18] local.INFO: New stock: 3  
[2026-06-01 12:15:18] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308919988"} 
[2026-06-01 12:16:17] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308978875","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T10:15:54.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 12:16:17] local.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-06-01 12:16:17] local.INFO: Old stock: 4.00  
[2026-06-01 12:16:17] local.INFO: Quantity deducted: 1  
[2026-06-01 12:16:17] local.INFO: New stock: 3  
[2026-06-01 12:16:17] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308978875"} 
[2026-06-01 12:16:37] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780308998555","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"147.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T06:09:24.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 12:16:37] local.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-01 12:16:37] local.INFO: Old stock: 147.00  
[2026-06-01 12:16:37] local.INFO: Quantity deducted: 1  
[2026-06-01 12:16:37] local.INFO: New stock: 146  
[2026-06-01 12:16:37] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780308998555"} 
[2026-06-01 12:16:56] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309017715","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"188.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T09:37:57.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:16:56] local.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-01 12:16:56] local.INFO: Old stock: 188.00  
[2026-06-01 12:16:56] local.INFO: Quantity deducted: 1  
[2026-06-01 12:16:56] local.INFO: New stock: 187  
[2026-06-01 12:16:56] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309017715"} 
[2026-06-01 12:17:18] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309040203","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"173.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-26T02:42:06.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:17:18] local.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-01 12:17:18] local.INFO: Old stock: 173.00  
[2026-06-01 12:17:18] local.INFO: Quantity deducted: 1  
[2026-06-01 12:17:18] local.INFO: New stock: 172  
[2026-06-01 12:17:18] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309040203"} 
[2026-06-01 12:17:40] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309060938","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-05-28T07:58:53.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:17:40] local.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-01 12:17:40] local.INFO: Old stock: 3.00  
[2026-06-01 12:17:40] local.INFO: Quantity deducted: 1  
[2026-06-01 12:17:40] local.INFO: New stock: 2  
[2026-06-01 12:17:40] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309060938"} 
[2026-06-01 12:18:19] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309101138","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":6,"subtotal":12000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-05-12T05:37:28.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:18:19] local.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-06-01 12:18:19] local.INFO: Old stock: 13.00  
[2026-06-01 12:18:19] local.INFO: Quantity deducted: 6  
[2026-06-01 12:18:19] local.INFO: New stock: 7  
[2026-06-01 12:18:19] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309101138"} 
[2026-06-01 12:18:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309116930","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"35.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T10:10:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:18:35] local.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 12:18:35] local.INFO: Old stock: 35.00  
[2026-06-01 12:18:35] local.INFO: Quantity deducted: 1  
[2026-06-01 12:18:35] local.INFO: New stock: 34  
[2026-06-01 12:18:35] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309116930"} 
[2026-06-01 12:19:01] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309143218","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"447.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-30T09:35:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:19:01] local.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-01 12:19:01] local.INFO: Old stock: 447.00  
[2026-06-01 12:19:01] local.INFO: Quantity deducted: 5  
[2026-06-01 12:19:01] local.INFO: New stock: 442  
[2026-06-01 12:19:01] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309143218"} 
[2026-06-01 12:19:18] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780309159730","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":45,"product_id":45,"name":"Albendazole (Normnil)","sku":"1385","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":45,"name":"Albendazole (Normnil)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1385","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-20T13:57:55.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 12:19:18] local.INFO: Stock deduction for product: Albendazole (Normnil)  
[2026-06-01 12:19:18] local.INFO: Old stock: 4.00  
[2026-06-01 12:19:18] local.INFO: Quantity deducted: 1  
[2026-06-01 12:19:18] local.INFO: New stock: 3  
[2026-06-01 12:19:18] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780309159730"} 
[2026-06-01 14:31:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780317070342","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":777,"product_id":777,"name":"ZINNIA P (Hormonal Contraceptive)","sku":"3414","price":"4500.00","selling_price":"4500.00","purchase_price":"2500.00","quantity":1,"subtotal":4500,"product":{"id":777,"name":"ZINNIA P (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"28","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3414","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-22T11:48:38.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 14:31:10] production.INFO: Stock deduction for product: ZINNIA P (Hormonal Contraceptive)  
[2026-06-01 14:31:10] production.INFO: Old stock: 3.00  
[2026-06-01 14:31:10] production.INFO: Quantity deducted: 1  
[2026-06-01 14:31:10] production.INFO: New stock: 2  
[2026-06-01 14:31:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780317070342"} 
[2026-06-01 14:35:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780317314284","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":10,"subtotal":3000,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"454.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:03:22.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 14:35:13] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-01 14:35:13] production.INFO: Old stock: 454.00  
[2026-06-01 14:35:13] production.INFO: Quantity deducted: 10  
[2026-06-01 14:35:13] production.INFO: New stock: 444  
[2026-06-01 14:35:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780317314284"} 
[2026-06-01 14:39:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780317594371","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":2,"subtotal":3000,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"34.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-26T04:28:06.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"cash"}} 
[2026-06-01 14:39:53] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-06-01 14:39:53] production.INFO: Old stock: 34.00  
[2026-06-01 14:39:53] production.INFO: Quantity deducted: 2  
[2026-06-01 14:39:53] production.INFO: New stock: 32  
[2026-06-01 14:39:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780317594371"} 
[2026-06-01 15:18:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780319915612","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":27,"product_id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","sku":"0659","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0659","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-01T06:27:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"84.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T10:00:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:18:35] production.INFO: Stock deduction for product: ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS  
[2026-06-01 15:18:35] production.INFO: Old stock: 4.00  
[2026-06-01 15:18:35] production.INFO: Quantity deducted: 1  
[2026-06-01 15:18:35] production.INFO: New stock: 3  
[2026-06-01 15:18:35] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-01 15:18:35] production.INFO: Old stock: 84.00  
[2026-06-01 15:18:35] production.INFO: Quantity deducted: 1  
[2026-06-01 15:18:35] production.INFO: New stock: 83  
[2026-06-01 15:18:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780319915612"} 
[2026-06-01 15:22:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780320132010","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"147.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T10:23:40.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 15:22:11] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-01 15:22:11] production.INFO: Old stock: 147.00  
[2026-06-01 15:22:11] production.INFO: Quantity deducted: 1  
[2026-06-01 15:22:11] production.INFO: New stock: 146  
[2026-06-01 15:22:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780320132010"} 
[2026-06-01 15:27:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780320457321","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"36.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T10:25:03.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:27:36] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 15:27:36] production.INFO: Old stock: 36.00  
[2026-06-01 15:27:36] production.INFO: Quantity deducted: 1  
[2026-06-01 15:27:36] production.INFO: New stock: 35  
[2026-06-01 15:27:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780320457321"} 
[2026-06-01 15:34:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780320888336","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":72,"product_id":72,"name":"Antagit DS Gel 170 ml","sku":"1183","price":"9000.00","selling_price":"9000.00","purchase_price":"4250.00","quantity":1,"subtotal":9000,"product":{"id":72,"name":"Antagit DS Gel 170 ml","business_location":"EDUC Pharmacy","unit_id":27,"category_id":39,"brand_id":1,"supplier_id":null,"purchase_price":"4250.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1183","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T10:21:53.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":23,"category_id":36,"brand_id":1,"supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"35.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T13:27:36.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 15:34:48] production.INFO: Stock deduction for product: Antagit DS Gel 170 ml  
[2026-06-01 15:34:48] production.INFO: Old stock: 3.00  
[2026-06-01 15:34:48] production.INFO: Quantity deducted: 1  
[2026-06-01 15:34:48] production.INFO: New stock: 2  
[2026-06-01 15:34:48] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 15:34:48] production.INFO: Old stock: 35.00  
[2026-06-01 15:34:48] production.INFO: Quantity deducted: 1  
[2026-06-01 15:34:48] production.INFO: New stock: 34  
[2026-06-01 15:34:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780320888336"} 
[2026-06-01 15:36:44] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1780321005311","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":65,"category_id":7,"brand_id":8,"supplier_id":1,"purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"21.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-01T10:24:52.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":46,"category_id":22,"brand_id":1,"supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T10:24:40.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":23,"category_id":39,"brand_id":1,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"38.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T10:24:31.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":57,"category_id":17,"brand_id":31,"supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"106.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T10:24:22.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:36:44] production.INFO: Stock deduction for product: Iduplus  
[2026-06-01 15:36:44] production.INFO: Old stock: 21.00  
[2026-06-01 15:36:44] production.INFO: Quantity deducted: 1  
[2026-06-01 15:36:44] production.INFO: New stock: 20  
[2026-06-01 15:36:44] production.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-01 15:36:44] production.INFO: Old stock: 7.00  
[2026-06-01 15:36:44] production.INFO: Quantity deducted: 2  
[2026-06-01 15:36:44] production.INFO: New stock: 5  
[2026-06-01 15:36:44] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-01 15:36:44] production.INFO: Old stock: 38.00  
[2026-06-01 15:36:44] production.INFO: Quantity deducted: 1  
[2026-06-01 15:36:44] production.INFO: New stock: 37  
[2026-06-01 15:36:44] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-01 15:36:44] production.INFO: Old stock: 106.00  
[2026-06-01 15:36:44] production.INFO: Quantity deducted: 1  
[2026-06-01 15:36:44] production.INFO: New stock: 105  
[2026-06-01 15:36:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321005311"} 
[2026-06-01 15:37:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780321022447","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":220,"product_id":220,"name":"Dazel Kit","sku":"1281","price":"32000.00","selling_price":"32000.00","purchase_price":"15000.00","quantity":1,"subtotal":32000,"product":{"id":220,"name":"Dazel Kit","business_location":"EDUC Pharmacy","unit_id":23,"category_id":7,"brand_id":9,"supplier_id":null,"purchase_price":"15000.00","last_purchase_price":null,"selling_price":"32000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T10:24:08.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 15:37:01] production.INFO: Stock deduction for product: Dazel Kit  
[2026-06-01 15:37:01] production.INFO: Old stock: 11.00  
[2026-06-01 15:37:01] production.INFO: Quantity deducted: 1  
[2026-06-01 15:37:01] production.INFO: New stock: 10  
[2026-06-01 15:37:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321022447"} 
[2026-06-01 15:41:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780321272222","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T10:23:49.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"146.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T13:22:11.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 15:41:10] production.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-06-01 15:41:10] production.INFO: Old stock: 4.00  
[2026-06-01 15:41:10] production.INFO: Quantity deducted: 1  
[2026-06-01 15:41:10] production.INFO: New stock: 3  
[2026-06-01 15:41:10] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-01 15:41:10] production.INFO: Old stock: 146.00  
[2026-06-01 15:41:10] production.INFO: Quantity deducted: 1  
[2026-06-01 15:41:10] production.INFO: New stock: 145  
[2026-06-01 15:41:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321272222"} 
[2026-06-01 15:46:24] production.INFO: Finalize sale attempt {"cart_items":10,"request_data":{"invoice_no":"INV-1780321585829","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"188.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T10:23:27.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"173.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T10:23:19.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-01T10:22:40.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":6,"subtotal":12000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-06-01T10:22:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":2,"subtotal":8000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"34.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T13:34:48.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":6,"subtotal":1200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"447.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T10:22:18.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":1,"subtotal":1000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"69.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-25T07:19:27.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":3,"subtotal":12000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"67.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T10:23:58.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"444.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T12:35:13.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"83.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T13:18:35.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-01 15:46:24] production.INFO: Old stock: 188.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 1  
[2026-06-01 15:46:24] production.INFO: New stock: 187  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-01 15:46:24] production.INFO: Old stock: 173.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 1  
[2026-06-01 15:46:24] production.INFO: New stock: 172  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-01 15:46:24] production.INFO: Old stock: 3.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 1  
[2026-06-01 15:46:24] production.INFO: New stock: 2  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-06-01 15:46:24] production.INFO: Old stock: 13.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 6  
[2026-06-01 15:46:24] production.INFO: New stock: 7  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 15:46:24] production.INFO: Old stock: 34.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 2  
[2026-06-01 15:46:24] production.INFO: New stock: 32  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-01 15:46:24] production.INFO: Old stock: 447.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 6  
[2026-06-01 15:46:24] production.INFO: New stock: 441  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-01 15:46:24] production.INFO: Old stock: 69.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 1  
[2026-06-01 15:46:24] production.INFO: New stock: 68  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-01 15:46:24] production.INFO: Old stock: 67.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 3  
[2026-06-01 15:46:24] production.INFO: New stock: 64  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-01 15:46:24] production.INFO: Old stock: 444.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 1  
[2026-06-01 15:46:24] production.INFO: New stock: 443  
[2026-06-01 15:46:24] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-01 15:46:24] production.INFO: Old stock: 83.00  
[2026-06-01 15:46:24] production.INFO: Quantity deducted: 1  
[2026-06-01 15:46:24] production.INFO: New stock: 82  
[2026-06-01 15:46:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321585829"} 
[2026-06-01 15:47:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780321649588","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":470,"product_id":470,"name":"Joykid Peads Syrup","sku":"3107","price":"5000.00","selling_price":"5000.00","purchase_price":"2560.00","quantity":1,"subtotal":5000,"product":{"id":470,"name":"Joykid Peads Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2560.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3107","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-01T06:52:11.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"50.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-27T08:54:05.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-01 15:47:28] production.INFO: Stock deduction for product: Joykid Peads Syrup  
[2026-06-01 15:47:28] production.INFO: Old stock: 9.00  
[2026-06-01 15:47:28] production.INFO: Quantity deducted: 1  
[2026-06-01 15:47:28] production.INFO: New stock: 8  
[2026-06-01 15:47:28] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-01 15:47:28] production.INFO: Old stock: 50.00  
[2026-06-01 15:47:28] production.INFO: Quantity deducted: 1  
[2026-06-01 15:47:28] production.INFO: New stock: 49  
[2026-06-01 15:47:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321649588"} 
[2026-06-01 15:48:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780321712668","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":147,"product_id":147,"name":"Cafemol Peads","sku":"1179","price":"300.00","selling_price":"300.00","purchase_price":"79.00","quantity":2,"subtotal":600,"product":{"id":147,"name":"Cafemol Peads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"79.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"51.00","stock":"79.00","product_type":"Single","tax":null,"sku":"1179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-30T01:44:19.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":771,"product_id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","sku":"3408","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","business_location":"EDUC Pharmacy","unit_id":"31","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3408","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:43:44.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:48:31] production.INFO: Stock deduction for product: Cafemol Peads  
[2026-06-01 15:48:31] production.INFO: Old stock: 51.00  
[2026-06-01 15:48:31] production.INFO: Quantity deducted: 2  
[2026-06-01 15:48:31] production.INFO: New stock: 49  
[2026-06-01 15:48:31] production.INFO: Stock deduction for product: Xonase Junior Drop (Xylometazoline 0.05%)  
[2026-06-01 15:48:31] production.INFO: Old stock: 10.00  
[2026-06-01 15:48:31] production.INFO: Quantity deducted: 1  
[2026-06-01 15:48:31] production.INFO: New stock: 9  
[2026-06-01 15:48:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321712668"} 
[2026-06-01 15:50:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780321849916","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"12.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T09:59:57.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 15:50:50] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-01 15:50:50] production.INFO: Old stock: 12.00  
[2026-06-01 15:50:50] production.INFO: Quantity deducted: 1  
[2026-06-01 15:50:50] production.INFO: New stock: 11  
[2026-06-01 15:50:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321849916"} 
[2026-06-01 15:51:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780321862444","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-04-29T02:34:05.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:51:00] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-06-01 15:51:00] production.INFO: Old stock: 22.00  
[2026-06-01 15:51:00] production.INFO: Quantity deducted: 1  
[2026-06-01 15:51:00] production.INFO: New stock: 21  
[2026-06-01 15:51:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780321862444"} 
[2026-06-01 15:54:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780322059723","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"145.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T13:41:10.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 15:54:18] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-01 15:54:18] production.INFO: Old stock: 145.00  
[2026-06-01 15:54:18] production.INFO: Quantity deducted: 1  
[2026-06-01 15:54:18] production.INFO: New stock: 144  
[2026-06-01 15:54:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780322059723"} 
[2026-06-01 15:58:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780322295616","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":27,"product_id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","sku":"0659","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0659","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-01T13:18:35.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 15:58:17] production.INFO: Stock deduction for product: ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS  
[2026-06-01 15:58:17] production.INFO: Old stock: 3.00  
[2026-06-01 15:58:17] production.INFO: Quantity deducted: 1  
[2026-06-01 15:58:17] production.INFO: New stock: 2  
[2026-06-01 15:58:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780322295616"} 
[2026-06-01 17:31:01] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780327860259","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"188.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"173.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:31:01] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-01 17:31:01] production.INFO: Old stock: 188.00  
[2026-06-01 17:31:01] production.INFO: Quantity deducted: 1  
[2026-06-01 17:31:01] production.INFO: New stock: 187  
[2026-06-01 17:31:01] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-01 17:31:01] production.INFO: Old stock: 173.00  
[2026-06-01 17:31:01] production.INFO: Quantity deducted: 1  
[2026-06-01 17:31:01] production.INFO: New stock: 172  
[2026-06-01 17:31:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780327860259"} 
[2026-06-01 17:31:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780327884883","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":6,"subtotal":12000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:31:26] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-01 17:31:26] production.INFO: Old stock: 3.00  
[2026-06-01 17:31:26] production.INFO: Quantity deducted: 1  
[2026-06-01 17:31:26] production.INFO: New stock: 2  
[2026-06-01 17:31:26] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-06-01 17:31:26] production.INFO: Old stock: 13.00  
[2026-06-01 17:31:26] production.INFO: Quantity deducted: 6  
[2026-06-01 17:31:26] production.INFO: New stock: 7  
[2026-06-01 17:31:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780327884883"} 
[2026-06-01 17:31:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780327908828","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"34.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"447.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:31:50] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 17:31:50] production.INFO: Old stock: 34.00  
[2026-06-01 17:31:50] production.INFO: Quantity deducted: 1  
[2026-06-01 17:31:50] production.INFO: New stock: 33  
[2026-06-01 17:31:50] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-01 17:31:50] production.INFO: Old stock: 447.00  
[2026-06-01 17:31:50] production.INFO: Quantity deducted: 5  
[2026-06-01 17:31:50] production.INFO: New stock: 442  
[2026-06-01 17:31:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780327908828"} 
[2026-06-01 17:32:14] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780327932639","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":1,"subtotal":1000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"69.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"67.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:32:14] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-01 17:32:14] production.INFO: Old stock: 69.00  
[2026-06-01 17:32:14] production.INFO: Quantity deducted: 1  
[2026-06-01 17:32:14] production.INFO: New stock: 68  
[2026-06-01 17:32:14] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-01 17:32:14] production.INFO: Old stock: 67.00  
[2026-06-01 17:32:14] production.INFO: Quantity deducted: 1  
[2026-06-01 17:32:14] production.INFO: New stock: 66  
[2026-06-01 17:32:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780327932639"} 
[2026-06-01 17:32:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780327947472","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"444.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"442.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T15:31:50.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:32:28] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-01 17:32:28] production.INFO: Old stock: 444.00  
[2026-06-01 17:32:28] production.INFO: Quantity deducted: 1  
[2026-06-01 17:32:28] production.INFO: New stock: 443  
[2026-06-01 17:32:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-01 17:32:28] production.INFO: Old stock: 442.00  
[2026-06-01 17:32:28] production.INFO: Quantity deducted: 1  
[2026-06-01 17:32:28] production.INFO: New stock: 441  
[2026-06-01 17:32:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780327947472"} 
[2026-06-01 17:33:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780327997704","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"66.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T15:32:14.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"83.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T15:29:24.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:33:19] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-01 17:33:19] production.INFO: Old stock: 66.00  
[2026-06-01 17:33:19] production.INFO: Quantity deducted: 1  
[2026-06-01 17:33:19] production.INFO: New stock: 65  
[2026-06-01 17:33:19] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-01 17:33:19] production.INFO: Old stock: 83.00  
[2026-06-01 17:33:19] production.INFO: Quantity deducted: 1  
[2026-06-01 17:33:19] production.INFO: New stock: 82  
[2026-06-01 17:33:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780327997704"} 
[2026-06-01 17:33:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780328006858","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"33.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T15:31:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:33:28] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 17:33:28] production.INFO: Old stock: 33.00  
[2026-06-01 17:33:28] production.INFO: Quantity deducted: 1  
[2026-06-01 17:33:28] production.INFO: New stock: 32  
[2026-06-01 17:33:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780328006858"} 
[2026-06-01 17:33:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780328037469","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"2.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-25T11:17:08.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 17:33:58] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-01 17:33:58] production.INFO: Old stock: 2.00  
[2026-06-01 17:33:58] production.INFO: Quantity deducted: 1  
[2026-06-01 17:33:58] production.INFO: New stock: 1  
[2026-06-01 17:33:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780328037469"} 
[2026-06-01 17:34:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780328056065","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":29,"product_id":29,"name":"ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS","sku":"0661","price":"10000.00","selling_price":"10000.00","purchase_price":"4800.00","quantity":1,"subtotal":10000,"product":{"id":29,"name":"ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4800.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0661","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-22T07:51:03.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 17:34:18] production.INFO: Stock deduction for product: ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS  
[2026-06-01 17:34:18] production.INFO: Old stock: 3.00  
[2026-06-01 17:34:18] production.INFO: Quantity deducted: 1  
[2026-06-01 17:34:18] production.INFO: New stock: 2  
[2026-06-01 17:34:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780328056065"} 
[2026-06-01 17:35:09] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780328107894","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"37.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T13:36:44.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"58.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-29T12:03:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 17:35:09] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-01 17:35:09] production.INFO: Old stock: 37.00  
[2026-06-01 17:35:09] production.INFO: Quantity deducted: 1  
[2026-06-01 17:35:09] production.INFO: New stock: 36  
[2026-06-01 17:35:09] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-01 17:35:09] production.INFO: Old stock: 58.00  
[2026-06-01 17:35:09] production.INFO: Quantity deducted: 1  
[2026-06-01 17:35:09] production.INFO: New stock: 57  
[2026-06-01 17:35:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780328107894"} 
[2026-06-01 17:35:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780328121117","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-01T09:29:09.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-01 17:35:23] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-01 17:35:23] production.INFO: Old stock: 17.00  
[2026-06-01 17:35:23] production.INFO: Quantity deducted: 1  
[2026-06-01 17:35:23] production.INFO: New stock: 16  
[2026-06-01 17:35:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780328121117"} 
[2026-06-01 17:50:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780329048717","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"4.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-26T03:33:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"187.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T15:31:01.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 17:50:50] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-01 17:50:50] production.INFO: Old stock: 4.00  
[2026-06-01 17:50:50] production.INFO: Quantity deducted: 1  
[2026-06-01 17:50:50] production.INFO: New stock: 3  
[2026-06-01 17:50:50] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-01 17:50:50] production.INFO: Old stock: 187.00  
[2026-06-01 17:50:50] production.INFO: Quantity deducted: 2  
[2026-06-01 17:50:50] production.INFO: New stock: 185  
[2026-06-01 17:50:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780329048717"} 
[2026-06-01 18:01:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780329665402","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"32.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T15:33:28.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"32.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-27T12:07:48.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 18:01:07] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 18:01:07] production.INFO: Old stock: 32.00  
[2026-06-01 18:01:07] production.INFO: Quantity deducted: 1  
[2026-06-01 18:01:07] production.INFO: New stock: 31  
[2026-06-01 18:01:07] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-01 18:01:07] production.INFO: Old stock: 32.00  
[2026-06-01 18:01:07] production.INFO: Quantity deducted: 1  
[2026-06-01 18:01:07] production.INFO: New stock: 31  
[2026-06-01 18:01:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780329665402"} 
[2026-06-01 18:51:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780332685067","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"30.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-28T09:59:32.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-01 18:51:26] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-01 18:51:26] production.INFO: Old stock: 30.00  
[2026-06-01 18:51:26] production.INFO: Quantity deducted: 1  
[2026-06-01 18:51:26] production.INFO: New stock: 29  
[2026-06-01 18:51:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780332685067"} 
[2026-06-01 19:47:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780336068023","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":769,"product_id":769,"name":"XIPRO-500 (Ciprofloxacin 500mg)","sku":"3406","price":"3000.00","selling_price":"3000.00","purchase_price":"1700.00","quantity":1,"subtotal":3000,"product":{"id":769,"name":"XIPRO-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"1700.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3406","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-16T11:52:57.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 19:47:51] production.INFO: Stock deduction for product: XIPRO-500 (Ciprofloxacin 500mg)  
[2026-06-01 19:47:51] production.INFO: Old stock: 12.00  
[2026-06-01 19:47:51] production.INFO: Quantity deducted: 1  
[2026-06-01 19:47:51] production.INFO: New stock: 11  
[2026-06-01 19:47:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780336068023"} 
[2026-06-01 19:54:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780336467419","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"48.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-01T09:08:47.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 19:54:29] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-01 19:54:29] production.INFO: Old stock: 48.00  
[2026-06-01 19:54:29] production.INFO: Quantity deducted: 1  
[2026-06-01 19:54:29] production.INFO: New stock: 47  
[2026-06-01 19:54:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780336467419"} 
[2026-06-01 21:06:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780340809999","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"31.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T16:01:07.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-01 21:06:51] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-01 21:06:51] production.INFO: Old stock: 31.00  
[2026-06-01 21:06:51] production.INFO: Quantity deducted: 1  
[2026-06-01 21:06:51] production.INFO: New stock: 30  
[2026-06-01 21:06:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780340809999"} 
[2026-06-02 08:42:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780382569238","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"38.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-04-30T07:41:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 08:42:49] production.INFO: Stock deduction for product: Active C  
[2026-06-02 08:42:49] production.INFO: Old stock: 38.00  
[2026-06-02 08:42:49] production.INFO: Quantity deducted: 1  
[2026-06-02 08:42:49] production.INFO: New stock: 37  
[2026-06-02 08:42:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780382569238"} 
[2026-06-02 08:44:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780382656213","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"35.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-28T23:55:25.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 08:44:15] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-02 08:44:15] production.INFO: Old stock: 35.00  
[2026-06-02 08:44:15] production.INFO: Quantity deducted: 1  
[2026-06-02 08:44:15] production.INFO: New stock: 34  
[2026-06-02 08:44:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780382656213"} 
[2026-06-02 08:46:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780382773084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-06-02T06:42:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 08:46:14] production.INFO: Stock deduction for product: Active C  
[2026-06-02 08:46:14] production.INFO: Old stock: 37.00  
[2026-06-02 08:46:14] production.INFO: Quantity deducted: 1  
[2026-06-02 08:46:14] production.INFO: New stock: 36  
[2026-06-02 08:46:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780382773084"} 
[2026-06-02 08:49:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780382994636","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"34.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-02T06:44:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 08:49:55] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-02 08:49:55] production.INFO: Old stock: 34.00  
[2026-06-02 08:49:55] production.INFO: Quantity deducted: 1  
[2026-06-02 08:49:55] production.INFO: New stock: 33  
[2026-06-02 08:49:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780382994636"} 
[2026-06-02 08:50:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780383025739","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"49.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-26T02:42:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 08:50:25] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-06-02 08:50:25] production.INFO: Old stock: 49.00  
[2026-06-02 08:50:25] production.INFO: Quantity deducted: 1  
[2026-06-02 08:50:25] production.INFO: New stock: 48  
[2026-06-02 08:50:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780383025739"} 
[2026-06-02 08:50:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780383045483","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"20.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-01T13:36:44.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 08:50:45] production.INFO: Stock deduction for product: Iduplus  
[2026-06-02 08:50:45] production.INFO: Old stock: 20.00  
[2026-06-02 08:50:45] production.INFO: Quantity deducted: 1  
[2026-06-02 08:50:45] production.INFO: New stock: 19  
[2026-06-02 08:50:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780383045483"} 
[2026-06-02 08:51:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780383100411","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T01:26:15.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 08:51:40] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-02 08:51:40] production.INFO: Old stock: 31.00  
[2026-06-02 08:51:40] production.INFO: Quantity deducted: 1  
[2026-06-02 08:51:40] production.INFO: New stock: 30  
[2026-06-02 08:51:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780383100411"} 
[2026-06-02 08:52:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780383154891","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"3.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-01T15:50:50.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 08:52:34] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-02 08:52:34] production.INFO: Old stock: 3.00  
[2026-06-02 08:52:34] production.INFO: Quantity deducted: 1  
[2026-06-02 08:52:34] production.INFO: New stock: 2  
[2026-06-02 08:52:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780383154891"} 
[2026-06-02 09:03:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780383798792","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"82.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T15:33:19.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 09:03:19] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-02 09:03:19] production.INFO: Old stock: 82.00  
[2026-06-02 09:03:19] production.INFO: Quantity deducted: 1  
[2026-06-02 09:03:19] production.INFO: New stock: 81  
[2026-06-02 09:03:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780383798792"} 
[2026-06-02 09:06:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780384012983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"19.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-02T06:50:45.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 09:06:53] production.INFO: Stock deduction for product: Iduplus  
[2026-06-02 09:06:53] production.INFO: Old stock: 19.00  
[2026-06-02 09:06:53] production.INFO: Quantity deducted: 1  
[2026-06-02 09:06:53] production.INFO: New stock: 18  
[2026-06-02 09:06:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780384012983"} 
[2026-06-02 09:19:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780384778627","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"30.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T19:06:51.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 09:19:38] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-02 09:19:38] production.INFO: Old stock: 30.00  
[2026-06-02 09:19:38] production.INFO: Quantity deducted: 1  
[2026-06-02 09:19:38] production.INFO: New stock: 29  
[2026-06-02 09:19:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780384778627"} 
[2026-06-02 09:43:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780386185837","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":80,"product_id":80,"name":"Artificial Tear (Sodium Carboxymethyl Cellulose))","sku":"1267","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":80,"name":"Artificial Tear (Sodium Carboxymethyl Cellulose))","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1267","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-26T07:45:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 09:43:06] production.INFO: Stock deduction for product: Artificial Tear (Sodium Carboxymethyl Cellulose))  
[2026-06-02 09:43:06] production.INFO: Old stock: 4.00  
[2026-06-02 09:43:06] production.INFO: Quantity deducted: 1  
[2026-06-02 09:43:06] production.INFO: New stock: 3  
[2026-06-02 09:43:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780386185837"} 
[2026-06-02 10:19:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388357555","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"31.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T16:01:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:19:17] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-02 10:19:17] production.INFO: Old stock: 31.00  
[2026-06-02 10:19:17] production.INFO: Quantity deducted: 1  
[2026-06-02 10:19:17] production.INFO: New stock: 30  
[2026-06-02 10:19:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388357555"} 
[2026-06-02 10:20:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388443186","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":42,"product_id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","sku":"0690","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"4.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0690","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-25T03:59:18.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:20:43] production.INFO: Stock deduction for product: AGYCIN (Azithromycin 40mg/ml Susp.), 15ml  
[2026-06-02 10:20:43] production.INFO: Old stock: 4.00  
[2026-06-02 10:20:43] production.INFO: Quantity deducted: 1  
[2026-06-02 10:20:43] production.INFO: New stock: 3  
[2026-06-02 10:20:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388443186"} 
[2026-06-02 10:21:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388477474","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"31.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T08:14:36.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:21:17] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-02 10:21:17] production.INFO: Old stock: 31.00  
[2026-06-02 10:21:17] production.INFO: Quantity deducted: 1  
[2026-06-02 10:21:17] production.INFO: New stock: 30  
[2026-06-02 10:21:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388477474"} 
[2026-06-02 10:21:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388505378","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"30.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T08:16:58.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:21:45] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-02 10:21:45] production.INFO: Old stock: 30.00  
[2026-06-02 10:21:45] production.INFO: Quantity deducted: 1  
[2026-06-02 10:21:45] production.INFO: New stock: 29  
[2026-06-02 10:21:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388505378"} 
[2026-06-02 10:22:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388530907","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":769,"product_id":769,"name":"XIPRO-500 (Ciprofloxacin 500mg)","sku":"3406","price":"3000.00","selling_price":"3000.00","purchase_price":"1700.00","quantity":1,"subtotal":3000,"product":{"id":769,"name":"XIPRO-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"1700.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3406","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T08:16:30.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:22:10] production.INFO: Stock deduction for product: XIPRO-500 (Ciprofloxacin 500mg)  
[2026-06-02 10:22:10] production.INFO: Old stock: 12.00  
[2026-06-02 10:22:10] production.INFO: Quantity deducted: 1  
[2026-06-02 10:22:10] production.INFO: New stock: 11  
[2026-06-02 10:22:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388530907"} 
[2026-06-02 10:23:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388639082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"3.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T08:10:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:23:59] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-02 10:23:59] production.INFO: Old stock: 3.00  
[2026-06-02 10:23:59] production.INFO: Quantity deducted: 1  
[2026-06-02 10:23:59] production.INFO: New stock: 2  
[2026-06-02 10:23:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388639082"} 
[2026-06-02 10:24:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388673609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T08:11:02.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:24:33] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-02 10:24:33] production.INFO: Old stock: 31.00  
[2026-06-02 10:24:33] production.INFO: Quantity deducted: 1  
[2026-06-02 10:24:33] production.INFO: New stock: 30  
[2026-06-02 10:24:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388673609"} 
[2026-06-02 10:24:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388691265","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"20.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-02T08:11:21.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:24:50] production.INFO: Stock deduction for product: Iduplus  
[2026-06-02 10:24:50] production.INFO: Old stock: 20.00  
[2026-06-02 10:24:50] production.INFO: Quantity deducted: 1  
[2026-06-02 10:24:50] production.INFO: New stock: 19  
[2026-06-02 10:24:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388691265"} 
[2026-06-02 10:26:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388769553","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"49.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-02T08:11:37.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:26:09] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-06-02 10:26:09] production.INFO: Old stock: 49.00  
[2026-06-02 10:26:09] production.INFO: Quantity deducted: 1  
[2026-06-02 10:26:09] production.INFO: New stock: 48  
[2026-06-02 10:26:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388769553"} 
[2026-06-02 10:26:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388817009","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"35.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-02T08:14:07.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 10:26:56] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-02 10:26:56] production.INFO: Old stock: 35.00  
[2026-06-02 10:26:56] production.INFO: Quantity deducted: 1  
[2026-06-02 10:26:56] production.INFO: New stock: 34  
[2026-06-02 10:26:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388817009"} 
[2026-06-02 10:27:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388840953","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"38.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-06-02T08:14:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 10:27:20] production.INFO: Stock deduction for product: Active C  
[2026-06-02 10:27:20] production.INFO: Old stock: 38.00  
[2026-06-02 10:27:20] production.INFO: Quantity deducted: 1  
[2026-06-02 10:27:20] production.INFO: New stock: 37  
[2026-06-02 10:27:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388840953"} 
[2026-06-02 10:27:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388862832","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"34.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-02T08:26:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:27:42] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-02 10:27:42] production.INFO: Old stock: 34.00  
[2026-06-02 10:27:42] production.INFO: Quantity deducted: 1  
[2026-06-02 10:27:42] production.INFO: New stock: 33  
[2026-06-02 10:27:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388862832"} 
[2026-06-02 10:28:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388884624","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-06-02T08:27:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:28:04] production.INFO: Stock deduction for product: Active C  
[2026-06-02 10:28:04] production.INFO: Old stock: 37.00  
[2026-06-02 10:28:04] production.INFO: Quantity deducted: 1  
[2026-06-02 10:28:04] production.INFO: New stock: 36  
[2026-06-02 10:28:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388884624"} 
[2026-06-02 10:28:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388914744","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"82.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T08:10:29.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:28:34] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-02 10:28:34] production.INFO: Old stock: 82.00  
[2026-06-02 10:28:34] production.INFO: Quantity deducted: 1  
[2026-06-02 10:28:34] production.INFO: New stock: 81  
[2026-06-02 10:28:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388914744"} 
[2026-06-02 10:28:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388933432","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"30.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T08:21:17.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:28:53] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-02 10:28:53] production.INFO: Old stock: 30.00  
[2026-06-02 10:28:53] production.INFO: Quantity deducted: 1  
[2026-06-02 10:28:53] production.INFO: New stock: 29  
[2026-06-02 10:28:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388933432"} 
[2026-06-02 10:29:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388969704","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":80,"product_id":80,"name":"Artificial Tear (Sodium Carboxymethyl Cellulose))","sku":"1267","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":80,"name":"Artificial Tear (Sodium Carboxymethyl Cellulose))","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1267","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-02T08:09:29.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:29:29] production.INFO: Stock deduction for product: Artificial Tear (Sodium Carboxymethyl Cellulose))  
[2026-06-02 10:29:29] production.INFO: Old stock: 4.00  
[2026-06-02 10:29:29] production.INFO: Quantity deducted: 1  
[2026-06-02 10:29:29] production.INFO: New stock: 3  
[2026-06-02 10:29:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388969704"} 
[2026-06-02 10:29:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780388995600","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":586,"product_id":586,"name":"Nifedipine 20mg Retard","sku":"3223","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":1,"subtotal":1500,"product":{"id":586,"name":"Nifedipine 20mg Retard","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3223","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-14T11:54:32.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:29:55] production.INFO: Stock deduction for product: Nifedipine 20mg Retard  
[2026-06-02 10:29:55] production.INFO: Old stock: 10.00  
[2026-06-02 10:29:55] production.INFO: Quantity deducted: 1  
[2026-06-02 10:29:55] production.INFO: New stock: 9  
[2026-06-02 10:29:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780388995600"} 
[2026-06-02 10:30:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780389022120","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":592,"product_id":592,"name":"NORMET (Metronidazole & Norfloxacin Tablets)","sku":"3229","price":"8000.00","selling_price":"8000.00","purchase_price":"3000.00","quantity":1,"subtotal":8000,"product":{"id":592,"name":"NORMET (Metronidazole & Norfloxacin Tablets)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3229","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-25T09:39:39.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:30:23] production.INFO: Stock deduction for product: NORMET (Metronidazole & Norfloxacin Tablets)  
[2026-06-02 10:30:23] production.INFO: Old stock: 7.00  
[2026-06-02 10:30:23] production.INFO: Quantity deducted: 1  
[2026-06-02 10:30:23] production.INFO: New stock: 6  
[2026-06-02 10:30:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780389022120"} 
[2026-06-02 10:38:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780389483246","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":826,"product_id":826,"name":"Pregalin (Pergalin) 75","sku":"PRD-00826","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":3,"subtotal":18000,"product":{"id":826,"name":"Pregalin (Pergalin) 75","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"5.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00826","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":"2026-04-03","created_at":"2026-04-03T10:29:44.000000Z","updated_at":"2026-05-20T06:56:08.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 10:38:02] production.INFO: Stock deduction for product: Pregalin (Pergalin) 75  
[2026-06-02 10:38:02] production.INFO: Old stock: 5.00  
[2026-06-02 10:38:02] production.INFO: Quantity deducted: 3  
[2026-06-02 10:38:02] production.INFO: New stock: 2  
[2026-06-02 10:38:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780389483246"} 
[2026-06-02 11:23:14] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780392195058","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":569,"product_id":569,"name":"MOXAFORTE CAPSULES (Flucloxacillin 250mg/Amoxicillin 250mg)","sku":"3206","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":569,"name":"MOXAFORTE CAPSULES (Flucloxacillin 250mg/Amoxicillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"11","brand_id":"10","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"7.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3206","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-24T10:46:00.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-27T00:48:22.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-02 11:23:14] production.INFO: Stock deduction for product: MOXAFORTE CAPSULES (Flucloxacillin 250mg/Amoxicillin 250mg)  
[2026-06-02 11:23:14] production.INFO: Old stock: 7.00  
[2026-06-02 11:23:14] production.INFO: Quantity deducted: 1  
[2026-06-02 11:23:14] production.INFO: New stock: 6  
[2026-06-02 11:23:14] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-02 11:23:14] production.INFO: Old stock: 20.00  
[2026-06-02 11:23:14] production.INFO: Quantity deducted: 1  
[2026-06-02 11:23:14] production.INFO: New stock: 19  
[2026-06-02 11:23:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780392195058"} 
[2026-06-02 11:32:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780392745791","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":215,"product_id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","sku":"0742","price":"4000.00","selling_price":"4000.00","purchase_price":"1980.00","quantity":1,"subtotal":4000,"product":{"id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"19","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1980.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0742","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-03-06T00:41:45.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 11:32:25] production.INFO: Stock deduction for product: DAWACLOCX (Cloxacillin Oral 125mg/5ml)  
[2026-06-02 11:32:25] production.INFO: Old stock: 5.00  
[2026-06-02 11:32:25] production.INFO: Quantity deducted: 1  
[2026-06-02 11:32:25] production.INFO: New stock: 4  
[2026-06-02 11:32:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780392745791"} 
[2026-06-02 11:34:15] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780392854766","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":3,"subtotal":3000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-05-13T04:20:25.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":58,"product_id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","sku":"0672","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":2,"subtotal":3000,"product":{"id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0672","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-01T10:03:21.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-02 11:34:15] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-06-02 11:34:15] production.INFO: Old stock: 18.00  
[2026-06-02 11:34:15] production.INFO: Quantity deducted: 3  
[2026-06-02 11:34:15] production.INFO: New stock: 15  
[2026-06-02 11:34:15] production.INFO: Stock deduction for product: AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB  
[2026-06-02 11:34:15] production.INFO: Old stock: 14.00  
[2026-06-02 11:34:15] production.INFO: Quantity deducted: 2  
[2026-06-02 11:34:15] production.INFO: New stock: 12  
[2026-06-02 11:34:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780392854766"} 
[2026-06-02 11:49:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780393784155","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":882,"product_id":882,"name":"Ambcet","sku":"PRD-00882","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":882,"name":"Ambcet","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00882","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-20","created_at":"2026-05-20T05:16:10.000000Z","updated_at":"2026-05-20T05:16:10.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 11:49:45] production.INFO: Stock deduction for product: Ambcet  
[2026-06-02 11:49:45] production.INFO: Old stock: 10.00  
[2026-06-02 11:49:45] production.INFO: Quantity deducted: 1  
[2026-06-02 11:49:45] production.INFO: New stock: 9  
[2026-06-02 11:49:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780393784155"} 
[2026-06-02 12:01:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780394485103","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"29.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T08:28:53.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 12:01:25] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-02 12:01:25] production.INFO: Old stock: 29.00  
[2026-06-02 12:01:25] production.INFO: Quantity deducted: 1  
[2026-06-02 12:01:25] production.INFO: New stock: 28  
[2026-06-02 12:01:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780394485103"} 
[2026-06-02 12:55:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780397729400","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"37.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-15T09:27:36.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"81.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T08:28:34.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 12:55:28] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-02 12:55:28] production.INFO: Old stock: 37.00  
[2026-06-02 12:55:28] production.INFO: Quantity deducted: 1  
[2026-06-02 12:55:28] production.INFO: New stock: 36  
[2026-06-02 12:55:28] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-02 12:55:28] production.INFO: Old stock: 81.00  
[2026-06-02 12:55:28] production.INFO: Quantity deducted: 1  
[2026-06-02 12:55:28] production.INFO: New stock: 80  
[2026-06-02 12:55:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780397729400"} 
[2026-06-02 12:56:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780397797800","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"105.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T13:36:44.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 12:56:37] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-02 12:56:37] production.INFO: Old stock: 105.00  
[2026-06-02 12:56:37] production.INFO: Quantity deducted: 1  
[2026-06-02 12:56:37] production.INFO: New stock: 104  
[2026-06-02 12:56:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780397797800"} 
[2026-06-02 13:21:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780399311145","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"145.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T13:54:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 13:21:51] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-02 13:21:51] production.INFO: Old stock: 145.00  
[2026-06-02 13:21:51] production.INFO: Quantity deducted: 1  
[2026-06-02 13:21:51] production.INFO: New stock: 144  
[2026-06-02 13:21:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780399311145"} 
[2026-06-02 13:45:02] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1780400703410","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":277,"product_id":277,"name":"ELOGYL Susp (Metronidazole)","sku":"1234","price":"4500.00","selling_price":"4500.00","purchase_price":"2000.00","quantity":1,"subtotal":4500,"product":{"id":277,"name":"ELOGYL Susp (Metronidazole)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1234","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-18T10:13:43.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":709,"product_id":709,"name":"SULFATRIM SYRUP (Paediatric Co-trimoxazole)","sku":"3346","price":"4000.00","selling_price":"4000.00","purchase_price":"1900.00","quantity":1,"subtotal":4000,"product":{"id":709,"name":"SULFATRIM SYRUP (Paediatric Co-trimoxazole)","business_location":"EDUC Pharmacy","unit_id":"40","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3346","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-04-18T06:14:57.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":472,"product_id":472,"name":"Junior Zinc 20MG","sku":"3109","price":"1000.00","selling_price":"1000.00","purchase_price":"395.00","quantity":1,"subtotal":1000,"product":{"id":472,"name":"Junior Zinc 20MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"395.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3109","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-25T11:24:00.000000Z","brand":null,"category":null}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"8.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-29T07:53:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 13:45:03] production.INFO: Stock deduction for product: ELOGYL Susp (Metronidazole)  
[2026-06-02 13:45:03] production.INFO: Old stock: 7.00  
[2026-06-02 13:45:03] production.INFO: Quantity deducted: 1  
[2026-06-02 13:45:03] production.INFO: New stock: 6  
[2026-06-02 13:45:03] production.INFO: Stock deduction for product: SULFATRIM SYRUP (Paediatric Co-trimoxazole)  
[2026-06-02 13:45:03] production.INFO: Old stock: 4.00  
[2026-06-02 13:45:03] production.INFO: Quantity deducted: 1  
[2026-06-02 13:45:03] production.INFO: New stock: 3  
[2026-06-02 13:45:03] production.INFO: Stock deduction for product: Junior Zinc 20MG  
[2026-06-02 13:45:03] production.INFO: Old stock: 4.00  
[2026-06-02 13:45:03] production.INFO: Quantity deducted: 1  
[2026-06-02 13:45:03] production.INFO: New stock: 3  
[2026-06-02 13:45:03] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-02 13:45:03] production.INFO: Old stock: 8.00  
[2026-06-02 13:45:03] production.INFO: Quantity deducted: 1  
[2026-06-02 13:45:03] production.INFO: New stock: 7  
[2026-06-02 13:45:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780400703410"} 
[2026-06-02 13:58:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780401483399","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T09:24:27.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 13:58:03] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-02 13:58:03] production.INFO: Old stock: 32.00  
[2026-06-02 13:58:03] production.INFO: Quantity deducted: 1  
[2026-06-02 13:58:03] production.INFO: New stock: 31  
[2026-06-02 13:58:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780401483399"} 
[2026-06-02 13:58:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780401508039","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":6,"subtotal":1200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"441.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T15:32:28.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 13:58:27] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-02 13:58:27] production.INFO: Old stock: 441.00  
[2026-06-02 13:58:27] production.INFO: Quantity deducted: 6  
[2026-06-02 13:58:27] production.INFO: New stock: 435  
[2026-06-02 13:58:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780401508039"} 
[2026-06-02 13:58:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780401529695","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"443.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T15:32:28.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 13:58:49] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-02 13:58:49] production.INFO: Old stock: 443.00  
[2026-06-02 13:58:49] production.INFO: Quantity deducted: 1  
[2026-06-02 13:58:49] production.INFO: New stock: 442  
[2026-06-02 13:58:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780401529695"} 
[2026-06-02 14:09:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780402163084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"1.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-01T10:01:49.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 14:09:24] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-02 14:09:24] production.INFO: Old stock: 1.00  
[2026-06-02 14:09:24] production.INFO: Quantity deducted: 1  
[2026-06-02 14:09:24] production.INFO: New stock: 0  
[2026-06-02 14:09:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780402163084"} 
[2026-06-02 14:09:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780402186508","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"442.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T11:58:49.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 14:09:45] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-02 14:09:45] production.INFO: Old stock: 442.00  
[2026-06-02 14:09:45] production.INFO: Quantity deducted: 1  
[2026-06-02 14:09:45] production.INFO: New stock: 441  
[2026-06-02 14:09:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780402186508"} 
[2026-06-02 14:17:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780402660034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T11:58:03.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 14:17:39] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-02 14:17:39] production.INFO: Old stock: 31.00  
[2026-06-02 14:17:39] production.INFO: Quantity deducted: 1  
[2026-06-02 14:17:39] production.INFO: New stock: 30  
[2026-06-02 14:17:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780402660034"} 
[2026-06-02 14:25:51] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780403152505","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"49.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T05:38:31.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"48.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T08:14:50.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"18.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-29T12:03:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 14:25:51] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-02 14:25:51] production.INFO: Old stock: 49.00  
[2026-06-02 14:25:51] production.INFO: Quantity deducted: 1  
[2026-06-02 14:25:51] production.INFO: New stock: 48  
[2026-06-02 14:25:51] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-02 14:25:51] production.INFO: Old stock: 48.00  
[2026-06-02 14:25:51] production.INFO: Quantity deducted: 1  
[2026-06-02 14:25:51] production.INFO: New stock: 47  
[2026-06-02 14:25:51] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-06-02 14:25:51] production.INFO: Old stock: 18.00  
[2026-06-02 14:25:51] production.INFO: Quantity deducted: 1  
[2026-06-02 14:25:51] production.INFO: New stock: 17  
[2026-06-02 14:25:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780403152505"} 
[2026-06-02 14:47:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780404454399","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-01T09:40:48.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 14:47:34] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-02 14:47:34] production.INFO: Old stock: 24.00  
[2026-06-02 14:47:34] production.INFO: Quantity deducted: 1  
[2026-06-02 14:47:34] production.INFO: New stock: 23  
[2026-06-02 14:47:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780404454399"} 
[2026-06-02 15:42:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780407763663","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":710,"product_id":710,"name":"Super Apeti Plus Syrp 200ml","sku":"3347","price":"14000.00","selling_price":"14000.00","purchase_price":"6900.00","quantity":1,"subtotal":14000,"product":{"id":710,"name":"Super Apeti Plus Syrp 200ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"6900.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"2.00","stock":"6.00","product_type":"Single","tax":null,"sku":"3347","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-19T03:49:08.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"airtel_money"}} 
[2026-06-02 15:42:44] production.INFO: Stock deduction for product: Super Apeti Plus Syrp 200ml  
[2026-06-02 15:42:44] production.INFO: Old stock: 2.00  
[2026-06-02 15:42:44] production.INFO: Quantity deducted: 1  
[2026-06-02 15:42:44] production.INFO: New stock: 1  
[2026-06-02 15:42:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780407763663"} 
[2026-06-02 16:19:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780409950739","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"66.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-01T09:53:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-02 16:19:11] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-02 16:19:11] production.INFO: Old stock: 66.00  
[2026-06-02 16:19:11] production.INFO: Quantity deducted: 1  
[2026-06-02 16:19:11] production.INFO: New stock: 65  
[2026-06-02 16:19:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780409950739"} 
[2026-06-02 16:40:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780411210801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-24T10:47:01.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-02 16:40:11] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-02 16:40:11] production.INFO: Old stock: 7.00  
[2026-06-02 16:40:11] production.INFO: Quantity deducted: 1  
[2026-06-02 16:40:11] production.INFO: New stock: 6  
[2026-06-02 16:40:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780411210801"} 
[2026-06-02 16:43:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780411402577","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-25T10:31:37.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 16:43:23] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-06-02 16:43:23] production.INFO: Old stock: 6.00  
[2026-06-02 16:43:23] production.INFO: Quantity deducted: 1  
[2026-06-02 16:43:23] production.INFO: New stock: 5  
[2026-06-02 16:43:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780411402577"} 
[2026-06-02 16:50:14] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780411813304","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"441.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T12:09:45.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"435.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T11:58:27.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 16:50:15] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-02 16:50:15] production.INFO: Old stock: 441.00  
[2026-06-02 16:50:15] production.INFO: Quantity deducted: 6  
[2026-06-02 16:50:15] production.INFO: New stock: 435  
[2026-06-02 16:50:15] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-02 16:50:15] production.INFO: Old stock: 435.00  
[2026-06-02 16:50:15] production.INFO: Quantity deducted: 1  
[2026-06-02 16:50:15] production.INFO: New stock: 434  
[2026-06-02 16:50:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780411813304"} 
[2026-06-02 17:02:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780412564215","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"47.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T12:25:51.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 17:02:46] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-02 17:02:46] production.INFO: Old stock: 47.00  
[2026-06-02 17:02:46] production.INFO: Quantity deducted: 1  
[2026-06-02 17:02:46] production.INFO: New stock: 46  
[2026-06-02 17:02:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780412564215"} 
[2026-06-02 17:14:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780413281182","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"99.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-30T05:41:13.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-02 17:14:41] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-02 17:14:41] production.INFO: Old stock: 99.00  
[2026-06-02 17:14:41] production.INFO: Quantity deducted: 1  
[2026-06-02 17:14:41] production.INFO: New stock: 98  
[2026-06-02 17:14:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780413281182"} 
[2026-06-02 17:24:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780413870956","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":410,"product_id":410,"name":"Gentanycin Eye Drops (WW-Genta)","sku":"3047","price":"2500.00","selling_price":"2500.00","purchase_price":"1000.00","quantity":1,"subtotal":2500,"product":{"id":410,"name":"Gentanycin Eye Drops (WW-Genta)","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3047","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-02 17:24:31] production.INFO: Stock deduction for product: Gentanycin Eye Drops (WW-Genta)  
[2026-06-02 17:24:31] production.INFO: Old stock: 8.00  
[2026-06-02 17:24:31] production.INFO: Quantity deducted: 1  
[2026-06-02 17:24:31] production.INFO: New stock: 7  
[2026-06-02 17:24:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780413870956"} 
[2026-06-02 17:27:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780414058452","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":202,"product_id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","sku":"0763","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"7.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0763","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-25T23:49:23.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-02 17:27:40] production.INFO: Stock deduction for product: DACOF PEADEATRIC SYRUP, 100ml  
[2026-06-02 17:27:40] production.INFO: Old stock: 7.00  
[2026-06-02 17:27:40] production.INFO: Quantity deducted: 1  
[2026-06-02 17:27:40] production.INFO: New stock: 6  
[2026-06-02 17:27:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780414058452"} 
[2026-06-02 17:40:15] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780414814755","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":1,"subtotal":1000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-27T06:32:11.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-18T13:33:21.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 17:40:15] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-06-02 17:40:15] production.INFO: Old stock: 24.00  
[2026-06-02 17:40:15] production.INFO: Quantity deducted: 1  
[2026-06-02 17:40:15] production.INFO: New stock: 23  
[2026-06-02 17:40:15] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-06-02 17:40:15] production.INFO: Old stock: 4.00  
[2026-06-02 17:40:15] production.INFO: Quantity deducted: 1  
[2026-06-02 17:40:15] production.INFO: New stock: 3  
[2026-06-02 17:40:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780414814755"} 
[2026-06-02 17:42:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780414922682","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"192.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:03:42.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 17:42:03] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-02 17:42:03] production.INFO: Old stock: 192.00  
[2026-06-02 17:42:03] production.INFO: Quantity deducted: 2  
[2026-06-02 17:42:03] production.INFO: New stock: 190  
[2026-06-02 17:42:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780414922682"} 
[2026-06-02 17:58:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780415907153","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":254,"product_id":254,"name":"DISPOSABLE SYRINGE 2ML","sku":"0783","price":"250.00","selling_price":"250.00","purchase_price":"119.00","quantity":2,"subtotal":500,"product":{"id":254,"name":"DISPOSABLE SYRINGE 2ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"119.00","last_purchase_price":null,"selling_price":"250.00","current_stock":"36.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0783","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-04-24T13:53:42.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-02 17:58:28] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 2ML  
[2026-06-02 17:58:28] production.INFO: Old stock: 36.00  
[2026-06-02 17:58:28] production.INFO: Quantity deducted: 2  
[2026-06-02 17:58:28] production.INFO: New stock: 34  
[2026-06-02 17:58:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780415907153"} 
[2026-06-02 18:26:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780417619462","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"104.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T10:56:37.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 18:26:59] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-02 18:26:59] production.INFO: Old stock: 104.00  
[2026-06-02 18:26:59] production.INFO: Quantity deducted: 1  
[2026-06-02 18:26:59] production.INFO: New stock: 103  
[2026-06-02 18:26:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780417619462"} 
[2026-06-02 19:01:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780419703403","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-02T12:47:34.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 19:01:43] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-02 19:01:43] production.INFO: Old stock: 23.00  
[2026-06-02 19:01:43] production.INFO: Quantity deducted: 1  
[2026-06-02 19:01:43] production.INFO: New stock: 22  
[2026-06-02 19:01:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780419703403"} 
[2026-06-02 19:10:22] production.INFO: Product Store - Request Data {"all_data":{"_token":"IwoX6RZfYGjY0v7nqVL7CfaxnsKoSdoA4dkPmfdr","name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1500.00","selling_price":"3000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-02 19:10:22] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-02 19:10:22] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":"PRD-00897","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1500.00","last_purchase_date":"2026-06-02 19:10:22"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-02 19:10:22] production.INFO: Product Store - Product Created {"product_id":897,"product_name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","product_sku":"PRD-00897"} 
[2026-06-02 19:11:06] production.INFO: Stock Adjustment - Initial State {"product_id":"99","previous_quantity":"14.00","previous_selling_price":"3000.00","validated_data":{"product_id":"99","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-02"}} 
[2026-06-02 19:11:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":99,"new_quantity":24.0,"current_stock":24.0,"changes_made":"Quantity adjusted"} 
[2026-06-02 19:12:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780420353377","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":755,"product_id":755,"name":"Vitamin B Complex","sku":"3392","price":"1000.00","selling_price":"1000.00","purchase_price":"242.00","quantity":1,"subtotal":1000,"product":{"id":755,"name":"Vitamin B Complex","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"242.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3392","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-27T06:39:25.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-02 19:12:33] production.INFO: Stock deduction for product: Vitamin B Complex  
[2026-06-02 19:12:33] production.INFO: Old stock: 11.00  
[2026-06-02 19:12:33] production.INFO: Quantity deducted: 1  
[2026-06-02 19:12:33] production.INFO: New stock: 10  
[2026-06-02 19:12:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780420353377"} 
[2026-06-02 19:13:48] production.INFO: Stock Adjustment - Initial State {"product_id":"151","previous_quantity":"1.00","previous_selling_price":"3000.00","validated_data":{"product_id":"151","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":"2500.00","new_expiry_date":"2026-06-02"}} 
[2026-06-02 19:13:48] production.INFO: Stock Adjustment - After Quantity Save {"product_id":151,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-06-02 19:17:39] production.INFO: Stock Adjustment - Initial State {"product_id":"168","previous_quantity":"0.00","previous_selling_price":"3000.00","validated_data":{"product_id":"168","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":"2000.00","new_expiry_date":"2026-06-02"}} 
[2026-06-02 19:17:39] production.INFO: Stock Adjustment - After Quantity Save {"product_id":168,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-06-02 19:17:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780420672304","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":200,"product_id":200,"name":"DACOF EXPECTORANT SYRUP","sku":"0761","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":200,"name":"DACOF EXPECTORANT SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"5.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0761","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-10T12:01:40.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 19:17:52] production.INFO: Stock deduction for product: DACOF EXPECTORANT SYRUP  
[2026-06-02 19:17:52] production.INFO: Old stock: 5.00  
[2026-06-02 19:17:52] production.INFO: Quantity deducted: 1  
[2026-06-02 19:17:52] production.INFO: New stock: 4  
[2026-06-02 19:17:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780420672304"} 
[2026-06-02 19:20:42] production.INFO: Product Store - Request Data {"all_data":{"_token":"IwoX6RZfYGjY0v7nqVL7CfaxnsKoSdoA4dkPmfdr","name":"Hydrocortisone Cream(Elycort)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1950.00","selling_price":"4000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-02 19:20:42] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Hydrocortisone Cream(Elycort)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","selling_price":"4000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-02 19:20:42] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Hydrocortisone Cream(Elycort)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","selling_price":"4000.00","sku":"PRD-00898","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1950.00","last_purchase_date":"2026-06-02 19:20:42"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-02 19:20:42] production.INFO: Product Store - Product Created {"product_id":898,"product_name":"Hydrocortisone Cream(Elycort)","product_sku":"PRD-00898"} 
[2026-06-02 19:24:05] production.INFO: Stock Adjustment - Initial State {"product_id":"381","previous_quantity":"80.00","previous_selling_price":"1500.00","validated_data":{"product_id":"381","adjustment_type":"subtract","quantity":"40","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-02"}} 
[2026-06-02 19:24:05] production.INFO: Stock Adjustment - After Quantity Save {"product_id":381,"new_quantity":40.0,"current_stock":40.0,"changes_made":"Quantity adjusted"} 
[2026-06-02 19:26:16] production.INFO: Stock Adjustment - Initial State {"product_id":"394","previous_quantity":"3.00","previous_selling_price":"3000.00","validated_data":{"product_id":"394","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":"2500.00","new_expiry_date":"2026-06-02"}} 
[2026-06-02 19:26:16] production.INFO: Stock Adjustment - After Quantity Save {"product_id":394,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-06-02 19:31:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780421460031","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"2.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T08:23:59.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-14T12:26:50.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 19:31:00] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-02 19:31:00] production.INFO: Old stock: 2.00  
[2026-06-02 19:31:00] production.INFO: Quantity deducted: 1  
[2026-06-02 19:31:00] production.INFO: New stock: 1  
[2026-06-02 19:31:00] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-02 19:31:00] production.INFO: Old stock: 11.00  
[2026-06-02 19:31:00] production.INFO: Quantity deducted: 1  
[2026-06-02 19:31:00] production.INFO: New stock: 10  
[2026-06-02 19:31:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780421460031"} 
[2026-06-02 19:34:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780421640199","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":897,"product_id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","sku":"PRD-00897","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00897","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:10:22.000000Z","updated_at":"2026-06-02T17:10:22.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 19:34:01] production.INFO: Stock deduction for product: Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL  
[2026-06-02 19:34:01] production.INFO: Old stock: 10.00  
[2026-06-02 19:34:01] production.INFO: Quantity deducted: 1  
[2026-06-02 19:34:01] production.INFO: New stock: 9  
[2026-06-02 19:34:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780421640199"} 
[2026-06-02 19:47:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780422463597","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"435.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T14:50:15.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 19:47:44] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-02 19:47:44] production.INFO: Old stock: 435.00  
[2026-06-02 19:47:44] production.INFO: Quantity deducted: 1  
[2026-06-02 19:47:44] production.INFO: New stock: 434  
[2026-06-02 19:47:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780422463597"} 
[2026-06-02 20:07:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780423629155","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"30.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T12:17:39.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 20:07:09] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-02 20:07:09] production.INFO: Old stock: 30.00  
[2026-06-02 20:07:09] production.INFO: Quantity deducted: 1  
[2026-06-02 20:07:09] production.INFO: New stock: 29  
[2026-06-02 20:07:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780423629155"} 
[2026-06-02 20:10:56] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780423855291","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"17.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-02T12:25:51.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"57.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-01T15:35:09.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"300.00","selling_price":"300.00","purchase_price":"112.00","quantity":1,"subtotal":300,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"112.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"53.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-29T12:03:47.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 20:10:56] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-06-02 20:10:56] production.INFO: Old stock: 17.00  
[2026-06-02 20:10:56] production.INFO: Quantity deducted: 1  
[2026-06-02 20:10:56] production.INFO: New stock: 16  
[2026-06-02 20:10:56] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-02 20:10:56] production.INFO: Old stock: 57.00  
[2026-06-02 20:10:56] production.INFO: Quantity deducted: 1  
[2026-06-02 20:10:56] production.INFO: New stock: 56  
[2026-06-02 20:10:56] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-06-02 20:10:56] production.INFO: Old stock: 53.00  
[2026-06-02 20:10:56] production.INFO: Quantity deducted: 1  
[2026-06-02 20:10:56] production.INFO: New stock: 52  
[2026-06-02 20:10:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780423855291"} 
[2026-06-02 20:47:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780426035688","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":826,"product_id":826,"name":"Pregalin (Pergalin) 75","sku":"PRD-00826","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":826,"name":"Pregalin (Pergalin) 75","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"2.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00826","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":"2026-04-03","created_at":"2026-04-03T10:29:44.000000Z","updated_at":"2026-06-02T08:38:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-02 20:47:16] production.INFO: Stock deduction for product: Pregalin (Pergalin) 75  
[2026-06-02 20:47:16] production.INFO: Old stock: 2.00  
[2026-06-02 20:47:16] production.INFO: Quantity deducted: 1  
[2026-06-02 20:47:16] production.INFO: New stock: 1  
[2026-06-02 20:47:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780426035688"} 
[2026-06-03 07:38:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780465106883","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":165,"product_id":165,"name":"CEFUROXIME AXETIL TABLETS (CELZA 500)","sku":"0727","price":"20000.00","selling_price":"20000.00","purchase_price":"5500.00","quantity":1,"subtotal":20000,"product":{"id":165,"name":"CEFUROXIME AXETIL TABLETS (CELZA 500)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0727","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-30T09:21:16.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 07:38:26] production.INFO: Stock deduction for product: CEFUROXIME AXETIL TABLETS (CELZA 500)  
[2026-06-03 07:38:26] production.INFO: Old stock: 10.00  
[2026-06-03 07:38:26] production.INFO: Quantity deducted: 1  
[2026-06-03 07:38:26] production.INFO: New stock: 9  
[2026-06-03 07:38:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780465106883"} 
[2026-06-03 07:39:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780465178922","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"28.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T10:01:25.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 07:39:39] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-03 07:39:39] production.INFO: Old stock: 28.00  
[2026-06-03 07:39:39] production.INFO: Quantity deducted: 1  
[2026-06-03 07:39:39] production.INFO: New stock: 27  
[2026-06-03 07:39:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780465178922"} 
[2026-06-03 07:45:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780465527185","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":40,"product_id":40,"name":"Adhesive Plater 5cm","sku":"1168","price":"3000.00","selling_price":"3000.00","purchase_price":"1600.00","quantity":1,"subtotal":3000,"product":{"id":40,"name":"Adhesive Plater 5cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1168","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-28T08:18:19.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 07:45:28] production.INFO: Stock deduction for product: Adhesive Plater 5cm  
[2026-06-03 07:45:28] production.INFO: Old stock: 3.00  
[2026-06-03 07:45:28] production.INFO: Quantity deducted: 1  
[2026-06-03 07:45:28] production.INFO: New stock: 2  
[2026-06-03 07:45:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780465527185"} 
[2026-06-03 08:50:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780469431755","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":415,"product_id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","sku":"3052","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-04-04T11:10:49.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 08:50:32] production.INFO: Stock deduction for product: Glam & Glory (Snail White Lotion) 25ml  
[2026-06-03 08:50:32] production.INFO: Old stock: 9.00  
[2026-06-03 08:50:32] production.INFO: Quantity deducted: 1  
[2026-06-03 08:50:32] production.INFO: New stock: 8  
[2026-06-03 08:50:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780469431755"} 
[2026-06-03 08:59:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780469945114","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"19.00","stock":"67.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:43:09.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-03 08:59:06] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-03 08:59:06] production.INFO: Old stock: 19.00  
[2026-06-03 08:59:06] production.INFO: Quantity deducted: 1  
[2026-06-03 08:59:06] production.INFO: New stock: 18  
[2026-06-03 08:59:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780469945114"} 
[2026-06-03 09:04:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780470278361","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":698,"product_id":698,"name":"Sodium Cromoglicate","sku":"3335","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":698,"name":"Sodium Cromoglicate","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3335","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-23T05:18:11.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 09:04:38] production.INFO: Stock deduction for product: Sodium Cromoglicate  
[2026-06-03 09:04:38] production.INFO: Old stock: 3.00  
[2026-06-03 09:04:38] production.INFO: Quantity deducted: 1  
[2026-06-03 09:04:38] production.INFO: New stock: 2  
[2026-06-03 09:04:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780470278361"} 
[2026-06-03 09:07:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780470452568","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":2,"subtotal":4000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"46.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-28T07:57:07.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 09:07:33] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-03 09:07:33] production.INFO: Old stock: 46.00  
[2026-06-03 09:07:33] production.INFO: Quantity deducted: 2  
[2026-06-03 09:07:33] production.INFO: New stock: 44  
[2026-06-03 09:07:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780470452568"} 
[2026-06-03 09:16:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780470972214","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":763,"product_id":763,"name":"Water Plaster","sku":"3400","price":"100.00","selling_price":"100.00","purchase_price":"36.00","quantity":5,"subtotal":500,"product":{"id":763,"name":"Water Plaster","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"36.00","last_purchase_price":null,"selling_price":"100.00","current_stock":"124.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3400","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-29T01:59:02.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 09:16:13] production.INFO: Stock deduction for product: Water Plaster  
[2026-06-03 09:16:13] production.INFO: Old stock: 124.00  
[2026-06-03 09:16:13] production.INFO: Quantity deducted: 5  
[2026-06-03 09:16:13] production.INFO: New stock: 119  
[2026-06-03 09:16:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780470972214"} 
[2026-06-03 09:28:48] production.INFO: Stock Adjustment - Initial State {"product_id":"822","previous_quantity":"0.00","previous_selling_price":"3000.00","validated_data":{"product_id":"822","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":"1700.00","new_expiry_date":"2026-06-03"}} 
[2026-06-03 09:28:48] production.INFO: Stock Adjustment - After Quantity Save {"product_id":822,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 09:30:45] production.INFO: Stock Adjustment - Initial State {"product_id":"167","previous_quantity":"5.00","previous_selling_price":"1500.00","validated_data":{"product_id":"167","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 09:30:45] production.INFO: Stock Adjustment - After Quantity Save {"product_id":167,"new_quantity":55.0,"current_stock":55.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 09:31:37] production.INFO: Stock Adjustment - Initial State {"product_id":"267","previous_quantity":"1.00","previous_selling_price":"14000.00","validated_data":{"product_id":"267","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 09:31:37] production.INFO: Stock Adjustment - After Quantity Save {"product_id":267,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 09:32:58] production.INFO: Stock Adjustment - Initial State {"product_id":"39","previous_quantity":"7.00","previous_selling_price":"5000.00","validated_data":{"product_id":"39","adjustment_type":"add","quantity":"300","reason":"new_stock","new_selling_price":"200.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 09:32:58] production.INFO: Stock Adjustment - After Quantity Save {"product_id":39,"new_quantity":307.0,"current_stock":307.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 09:35:28] production.INFO: Stock Adjustment - Initial State {"product_id":"651","previous_quantity":"0.00","previous_selling_price":"4000.00","validated_data":{"product_id":"651","adjustment_type":"add","quantity":"9","reason":"new_stock","new_selling_price":"8000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 09:35:28] production.INFO: Stock Adjustment - After Quantity Save {"product_id":651,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 09:38:01] production.INFO: Stock Adjustment - Initial State {"product_id":"581","previous_quantity":"15.00","previous_selling_price":"3000.00","validated_data":{"product_id":"581","adjustment_type":"subtract","quantity":"6","reason":"new_stock","new_selling_price":"11500.00","new_purchase_price":"4500.00","new_expiry_date":"2026-06-03"}} 
[2026-06-03 09:38:01] production.INFO: Stock Adjustment - After Quantity Save {"product_id":581,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 09:40:33] production.INFO: Product Store - Request Data {"all_data":{"_token":"UHhZKpPtIqcEqRGxPqHwZs715HQ4XuGN8PvR7r4f","name":"Nervillin NT 150mg Caps","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"5500.00","selling_price":"11500.00","description":null,"purchase_quantity":"9.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-03 09:40:33] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Nervillin NT 150mg Caps","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"11500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"9.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-03 09:40:33] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Nervillin NT 150mg Caps","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"11500.00","sku":"PRD-00899","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"9.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"9.00","last_purchase_price":"5500.00","last_purchase_date":"2026-06-03 09:40:33"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-03 09:40:33] production.INFO: Product Store - Product Created {"product_id":899,"product_name":"Nervillin NT 150mg Caps","product_sku":"PRD-00899"} 
[2026-06-03 10:09:58] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780474196499","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":471,"product_id":471,"name":"JOYKID SUSP. (Ibuprofen & Paracetamol), 60ml","sku":"3108","price":"6000.00","selling_price":"6000.00","purchase_price":"2900.00","quantity":1,"subtotal":6000,"product":{"id":471,"name":"JOYKID SUSP. (Ibuprofen & Paracetamol), 60ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2900.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3108","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-06T01:09:26.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-05-27T05:36:48.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":139,"product_id":139,"name":"Bromsal (Bronchodilator Mucolytic)","sku":"1350","price":"8000.00","selling_price":"8000.00","purchase_price":"3750.00","quantity":1,"subtotal":8000,"product":{"id":139,"name":"Bromsal (Bronchodilator Mucolytic)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"3750.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1350","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-01T09:00:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 10:09:58] production.INFO: Stock deduction for product: JOYKID SUSP. (Ibuprofen & Paracetamol), 60ml  
[2026-06-03 10:09:58] production.INFO: Old stock: 9.00  
[2026-06-03 10:09:58] production.INFO: Quantity deducted: 1  
[2026-06-03 10:09:58] production.INFO: New stock: 8  
[2026-06-03 10:09:58] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-06-03 10:09:58] production.INFO: Old stock: 7.00  
[2026-06-03 10:09:58] production.INFO: Quantity deducted: 1  
[2026-06-03 10:09:58] production.INFO: New stock: 6  
[2026-06-03 10:09:58] production.INFO: Stock deduction for product: Bromsal (Bronchodilator Mucolytic)  
[2026-06-03 10:09:58] production.INFO: Old stock: 4.00  
[2026-06-03 10:09:58] production.INFO: Quantity deducted: 1  
[2026-06-03 10:09:58] production.INFO: New stock: 3  
[2026-06-03 10:09:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780474196499"} 
[2026-06-03 12:25:11] production.INFO: Stock Adjustment - Initial State {"product_id":"699","previous_quantity":"3.00","previous_selling_price":"4000.00","validated_data":{"product_id":"699","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":"4500.00","new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:25:11] production.INFO: Stock Adjustment - After Quantity Save {"product_id":699,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:28:14] production.INFO: Product Store - Request Data {"all_data":{"_token":"UHhZKpPtIqcEqRGxPqHwZs715HQ4XuGN8PvR7r4f","name":"Kamasutra Condoms","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1250.00","selling_price":"2500.00","description":null,"purchase_quantity":"24.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-03 12:28:14] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Kamasutra Condoms","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","selling_price":"2500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"24.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-03 12:28:14] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Kamasutra Condoms","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","selling_price":"2500.00","sku":"PRD-00900","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"24.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"24.00","last_purchase_price":"1250.00","last_purchase_date":"2026-06-03 12:28:14"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-03 12:28:14] production.INFO: Product Store - Product Created {"product_id":900,"product_name":"Kamasutra Condoms","product_sku":"PRD-00900"} 
[2026-06-03 12:30:45] production.INFO: Product Store - Request Data {"all_data":{"_token":"UHhZKpPtIqcEqRGxPqHwZs715HQ4XuGN8PvR7r4f","name":"Collogate Herbal","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3500.00","selling_price":"6000.00","description":null,"purchase_quantity":"12.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-03 12:30:45] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Collogate Herbal","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"6000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"12.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-03 12:30:45] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Collogate Herbal","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"6000.00","sku":"PRD-00901","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"12.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"12.00","last_purchase_price":"3500.00","last_purchase_date":"2026-06-03 12:30:45"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-03 12:30:45] production.INFO: Product Store - Product Created {"product_id":901,"product_name":"Collogate Herbal","product_sku":"PRD-00901"} 
[2026-06-03 12:32:05] production.INFO: Stock Adjustment - Initial State {"product_id":"429","previous_quantity":"3.00","previous_selling_price":"10000.00","validated_data":{"product_id":"429","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":"8000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:32:05] production.INFO: Stock Adjustment - After Quantity Save {"product_id":429,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:32:44] production.INFO: Stock Adjustment - Initial State {"product_id":"634","previous_quantity":"1.00","previous_selling_price":"3000.00","validated_data":{"product_id":"634","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:32:44] production.INFO: Stock Adjustment - After Quantity Save {"product_id":634,"new_quantity":21.0,"current_stock":21.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:33:57] production.INFO: Stock Adjustment - Initial State {"product_id":"141","previous_quantity":"0.00","previous_selling_price":"5500.00","validated_data":{"product_id":"141","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"8000.00","new_purchase_price":"3900.00","new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:33:57] production.INFO: Stock Adjustment - After Quantity Save {"product_id":141,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:35:05] production.INFO: Stock Adjustment - Initial State {"product_id":"71","previous_quantity":"4.00","previous_selling_price":"6000.00","validated_data":{"product_id":"71","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:35:05] production.INFO: Stock Adjustment - After Quantity Save {"product_id":71,"new_quantity":104.0,"current_stock":104.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:36:12] production.INFO: Stock Adjustment - Initial State {"product_id":"71","previous_quantity":"104.00","previous_selling_price":"6000.00","validated_data":{"product_id":"71","adjustment_type":"subtract","quantity":"90","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:36:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":71,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:37:35] production.INFO: Stock Adjustment - Initial State {"product_id":"72","previous_quantity":"2.00","previous_selling_price":"9000.00","validated_data":{"product_id":"72","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"11000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:37:35] production.INFO: Stock Adjustment - After Quantity Save {"product_id":72,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:38:20] production.INFO: Finalize sale attempt {"cart_items":10,"request_data":{"invoice_no":"INV-1780483100338","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":574,"product_id":574,"name":"Mucolyn Peads 100ml","sku":"3211","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":574,"name":"Mucolyn Peads 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3211","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-25T03:59:18.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T11:45:03.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"29.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T18:07:09.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"103.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T16:26:59.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"77.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-01T09:31:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":394,"product_id":394,"name":"FUNGISTAT (Miconazole Cream 2%w/w), 15g","sku":"3031","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":394,"name":"FUNGISTAT (Miconazole Cream 2%w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3031","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T17:26:16.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"27.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T05:39:39.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":721,"product_id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","sku":"3358","price":"2000.00","selling_price":"2000.00","purchase_price":"760.00","quantity":2,"subtotal":4000,"product":{"id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3358","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-04-11T10:51:07.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":226,"product_id":226,"name":"DEMONA (DEXAMETHASONE) EYE DROPS 5ML","sku":"0773","price":"3000.00","selling_price":"3000.00","purchase_price":"1200.00","quantity":2,"subtotal":6000,"product":{"id":226,"name":"DEMONA (DEXAMETHASONE) EYE DROPS 5ML","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"33","brand_id":"9","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0773","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:47:29.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":33,"name":"EYE DROP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-03T10:28:14.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: Mucolyn Peads 100ml  
[2026-06-03 12:38:20] production.INFO: Old stock: 9.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 8  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-03 12:38:20] production.INFO: Old stock: 7.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 6  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-03 12:38:20] production.INFO: Old stock: 29.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 28  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-03 12:38:20] production.INFO: Old stock: 103.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 102  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-03 12:38:20] production.INFO: Old stock: 77.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 76  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: FUNGISTAT (Miconazole Cream 2%w/w), 15g  
[2026-06-03 12:38:20] production.INFO: Old stock: 8.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 7  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-03 12:38:20] production.INFO: Old stock: 27.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 26  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: Tetracycline Eye Ointiment (WW-TEO)  
[2026-06-03 12:38:20] production.INFO: Old stock: 14.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 2  
[2026-06-03 12:38:20] production.INFO: New stock: 12  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: DEMONA (DEXAMETHASONE) EYE DROPS 5ML  
[2026-06-03 12:38:20] production.INFO: Old stock: 13.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 2  
[2026-06-03 12:38:20] production.INFO: New stock: 11  
[2026-06-03 12:38:20] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-03 12:38:20] production.INFO: Old stock: 24.00  
[2026-06-03 12:38:20] production.INFO: Quantity deducted: 1  
[2026-06-03 12:38:20] production.INFO: New stock: 23  
[2026-06-03 12:38:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780483100338"} 
[2026-06-03 12:38:30] production.INFO: Stock Adjustment - Initial State {"product_id":"396","previous_quantity":"2.00","previous_selling_price":"5500.00","validated_data":{"product_id":"396","adjustment_type":"add","quantity":"6000","reason":"new_stock","new_selling_price":"10.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:38:30] production.INFO: Stock Adjustment - After Quantity Save {"product_id":396,"new_quantity":6002.0,"current_stock":6002.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:38:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780483120794","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":27,"product_id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","sku":"0659","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":2,"subtotal":9000,"product":{"id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0659","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-01T13:58:59.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 12:38:39] production.INFO: Stock deduction for product: ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS  
[2026-06-03 12:38:39] production.INFO: Old stock: 3.00  
[2026-06-03 12:38:39] production.INFO: Quantity deducted: 2  
[2026-06-03 12:38:39] production.INFO: New stock: 1  
[2026-06-03 12:38:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780483120794"} 
[2026-06-03 12:39:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780483143082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":586,"product_id":586,"name":"Nifedipine 20mg Retard","sku":"3223","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":4,"subtotal":6000,"product":{"id":586,"name":"Nifedipine 20mg Retard","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3223","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T08:29:55.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 12:39:02] production.INFO: Stock deduction for product: Nifedipine 20mg Retard  
[2026-06-03 12:39:02] production.INFO: Old stock: 9.00  
[2026-06-03 12:39:02] production.INFO: Quantity deducted: 4  
[2026-06-03 12:39:02] production.INFO: New stock: 5  
[2026-06-03 12:39:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780483143082"} 
[2026-06-03 12:39:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780483160194","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":659,"product_id":659,"name":"PROPRANOLOL 40MG","sku":"3296","price":"1000.00","selling_price":"1000.00","purchase_price":"409.00","quantity":1,"subtotal":1000,"product":{"id":659,"name":"PROPRANOLOL 40MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"409.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"84.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3296","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-29T11:38:05.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"65.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-23T10:31:54.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 12:39:19] production.INFO: Stock deduction for product: PROPRANOLOL 40MG  
[2026-06-03 12:39:19] production.INFO: Old stock: 84.00  
[2026-06-03 12:39:19] production.INFO: Quantity deducted: 1  
[2026-06-03 12:39:19] production.INFO: New stock: 83  
[2026-06-03 12:39:19] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-06-03 12:39:19] production.INFO: Old stock: 65.00  
[2026-06-03 12:39:19] production.INFO: Quantity deducted: 1  
[2026-06-03 12:39:19] production.INFO: New stock: 64  
[2026-06-03 12:39:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780483160194"} 
[2026-06-03 12:39:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780483176626","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":2,"subtotal":5000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-03T10:38:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 12:39:35] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-03 12:39:35] production.INFO: Old stock: 23.00  
[2026-06-03 12:39:35] production.INFO: Quantity deducted: 2  
[2026-06-03 12:39:35] production.INFO: New stock: 21  
[2026-06-03 12:39:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780483176626"} 
[2026-06-03 12:39:40] production.INFO: Stock Adjustment - Initial State {"product_id":"396","previous_quantity":"6002.00","previous_selling_price":"10.00","validated_data":{"product_id":"396","adjustment_type":"subtract","quantity":"5988","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:39:40] production.INFO: Stock Adjustment - After Quantity Save {"product_id":396,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:40:36] production.INFO: Stock Adjustment - Initial State {"product_id":"794","previous_quantity":"2.00","previous_selling_price":"1500.00","validated_data":{"product_id":"794","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:40:36] production.INFO: Stock Adjustment - After Quantity Save {"product_id":794,"new_quantity":32.0,"current_stock":32.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:41:09] production.INFO: Stock Adjustment - Initial State {"product_id":"703","previous_quantity":"10.00","previous_selling_price":"2500.00","validated_data":{"product_id":"703","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:41:09] production.INFO: Stock Adjustment - After Quantity Save {"product_id":703,"new_quantity":30.0,"current_stock":30.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:42:45] production.INFO: Stock Adjustment - Initial State {"product_id":"820","previous_quantity":"10.00","previous_selling_price":"2000.00","validated_data":{"product_id":"820","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":"2000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:42:45] production.INFO: Stock Adjustment - After Quantity Save {"product_id":820,"new_quantity":40.0,"current_stock":40.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:43:26] production.INFO: Stock Adjustment - Initial State {"product_id":"820","previous_quantity":"40.00","previous_selling_price":"2000.00","validated_data":{"product_id":"820","adjustment_type":"subtract","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:43:26] production.INFO: Stock Adjustment - After Quantity Save {"product_id":820,"new_quantity":30.0,"current_stock":30.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:44:50] production.INFO: Stock Adjustment - Initial State {"product_id":"274","previous_quantity":"0.00","previous_selling_price":"4000.00","validated_data":{"product_id":"274","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:44:50] production.INFO: Stock Adjustment - After Quantity Save {"product_id":274,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:47:02] production.INFO: Product Store - Request Data {"all_data":{"_token":"UHhZKpPtIqcEqRGxPqHwZs715HQ4XuGN8PvR7r4f","name":"Chlorpromazine","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1500.00","selling_price":"3000.00","description":null,"purchase_quantity":"20.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-03 12:47:02] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Chlorpromazine","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-03 12:47:02] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Chlorpromazine","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":"PRD-00902","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"20.00","last_purchase_price":"1500.00","last_purchase_date":"2026-06-03 12:47:02"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-03 12:47:02] production.INFO: Product Store - Product Created {"product_id":902,"product_name":"Chlorpromazine","product_sku":"PRD-00902"} 
[2026-06-03 12:47:52] production.INFO: Stock Adjustment - Initial State {"product_id":"662","previous_quantity":"4.00","previous_selling_price":"6500.00","validated_data":{"product_id":"662","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"7000.00","new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:47:52] production.INFO: Stock Adjustment - After Quantity Save {"product_id":662,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:48:47] production.INFO: Stock Adjustment - Initial State {"product_id":"542","previous_quantity":"24.00","previous_selling_price":"500.00","validated_data":{"product_id":"542","adjustment_type":"add","quantity":"250","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-03"}} 
[2026-06-03 12:48:47] production.INFO: Stock Adjustment - After Quantity Save {"product_id":542,"new_quantity":274.0,"current_stock":274.0,"changes_made":"Quantity adjusted"} 
[2026-06-03 12:52:22] production.INFO: Product Store - Request Data {"all_data":{"_token":"UHhZKpPtIqcEqRGxPqHwZs715HQ4XuGN8PvR7r4f","name":"Muc0 Asthalin","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"5500.00","selling_price":"10500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-03 12:52:22] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Muc0 Asthalin","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"10500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-03 12:52:22] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Muc0 Asthalin","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"10500.00","sku":"PRD-00903","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"5500.00","last_purchase_date":"2026-06-03 12:52:22"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-03 12:52:22] production.INFO: Product Store - Product Created {"product_id":903,"product_name":"Muc0 Asthalin","product_sku":"PRD-00903"} 
[2026-06-03 13:57:12] production.INFO: Finalize sale attempt {"cart_items":9,"request_data":{"invoice_no":"INV-1780487832577","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":574,"product_id":574,"name":"Mucolyn Peads 100ml","sku":"3211","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":574,"name":"Mucolyn Peads 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3211","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"29.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"103.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"77.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":394,"product_id":394,"name":"FUNGISTAT (Miconazole Cream 2%w/w), 15g","sku":"3031","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":394,"name":"FUNGISTAT (Miconazole Cream 2%w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3031","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"27.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":721,"product_id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","sku":"3358","price":"2000.00","selling_price":"2000.00","purchase_price":"760.00","quantity":2,"subtotal":4000,"product":{"id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3358","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":226,"product_id":226,"name":"DEMONA (DEXAMETHASONE) EYE DROPS 5ML","sku":"0773","price":"3000.00","selling_price":"3000.00","purchase_price":"1200.00","quantity":2,"subtotal":6000,"product":{"id":226,"name":"DEMONA (DEXAMETHASONE) EYE DROPS 5ML","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"33","brand_id":"9","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0773","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":33,"name":"EYE DROP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: Mucolyn Peads 100ml  
[2026-06-03 13:57:12] production.INFO: Old stock: 9.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 8  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-03 13:57:12] production.INFO: Old stock: 7.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 6  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-03 13:57:12] production.INFO: Old stock: 29.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 28  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-03 13:57:12] production.INFO: Old stock: 103.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 102  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-03 13:57:12] production.INFO: Old stock: 77.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 76  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: FUNGISTAT (Miconazole Cream 2%w/w), 15g  
[2026-06-03 13:57:12] production.INFO: Old stock: 8.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 7  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-03 13:57:12] production.INFO: Old stock: 27.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:12] production.INFO: New stock: 26  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: Tetracycline Eye Ointiment (WW-TEO)  
[2026-06-03 13:57:12] production.INFO: Old stock: 14.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 2  
[2026-06-03 13:57:12] production.INFO: New stock: 12  
[2026-06-03 13:57:12] production.INFO: Stock deduction for product: DEMONA (DEXAMETHASONE) EYE DROPS 5ML  
[2026-06-03 13:57:12] production.INFO: Old stock: 13.00  
[2026-06-03 13:57:12] production.INFO: Quantity deducted: 2  
[2026-06-03 13:57:12] production.INFO: New stock: 11  
[2026-06-03 13:57:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780487832577"} 
[2026-06-03 13:57:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780487846984","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-03T11:54:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 13:57:26] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-03 13:57:26] production.INFO: Old stock: 22.00  
[2026-06-03 13:57:26] production.INFO: Quantity deducted: 1  
[2026-06-03 13:57:26] production.INFO: New stock: 21  
[2026-06-03 13:57:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780487846984"} 
[2026-06-03 14:04:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780488253223","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"46.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T15:02:46.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 14:04:13] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-03 14:04:13] production.INFO: Old stock: 46.00  
[2026-06-03 14:04:13] production.INFO: Quantity deducted: 1  
[2026-06-03 14:04:13] production.INFO: New stock: 45  
[2026-06-03 14:04:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780488253223"} 
[2026-06-03 14:31:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780489892121","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":521,"product_id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","sku":"3158","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"21.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3158","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-28T08:06:12.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 14:31:31] production.INFO: Stock deduction for product: LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)  
[2026-06-03 14:31:31] production.INFO: Old stock: 21.00  
[2026-06-03 14:31:31] production.INFO: Quantity deducted: 1  
[2026-06-03 14:31:31] production.INFO: New stock: 20  
[2026-06-03 14:31:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780489892121"} 
[2026-06-03 15:00:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780491600923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"185.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T15:50:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 15:00:01] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-03 15:00:01] production.INFO: Old stock: 185.00  
[2026-06-03 15:00:01] production.INFO: Quantity deducted: 1  
[2026-06-03 15:00:01] production.INFO: New stock: 184  
[2026-06-03 15:00:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780491600923"} 
[2026-06-03 15:08:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780492094097","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":685,"product_id":685,"name":"Shaltoux 4 Way Relief Cough Syp","sku":"3322","price":"5500.00","selling_price":"5500.00","purchase_price":"3200.00","quantity":1,"subtotal":5500,"product":{"id":685,"name":"Shaltoux 4 Way Relief Cough Syp","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3322","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-17T10:41:13.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 15:08:14] production.INFO: Stock deduction for product: Shaltoux 4 Way Relief Cough Syp  
[2026-06-03 15:08:14] production.INFO: Old stock: 2.00  
[2026-06-03 15:08:14] production.INFO: Quantity deducted: 1  
[2026-06-03 15:08:14] production.INFO: New stock: 1  
[2026-06-03 15:08:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780492094097"} 
[2026-06-03 15:15:40] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780492541247","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-02T08:26:09.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"48.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T12:25:51.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 15:15:40] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-06-03 15:15:40] production.INFO: Old stock: 48.00  
[2026-06-03 15:15:40] production.INFO: Quantity deducted: 1  
[2026-06-03 15:15:40] production.INFO: New stock: 47  
[2026-06-03 15:15:40] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-03 15:15:40] production.INFO: Old stock: 48.00  
[2026-06-03 15:15:40] production.INFO: Quantity deducted: 1  
[2026-06-03 15:15:40] production.INFO: New stock: 47  
[2026-06-03 15:15:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780492541247"} 
[2026-06-03 15:44:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780494265244","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":575,"product_id":575,"name":"Multivit G ( Multivitamin Caps)","sku":"3212","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":2,"subtotal":10000,"product":{"id":575,"name":"Multivit G ( Multivitamin Caps)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3212","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-04-18T08:40:49.000000Z","brand":null,"category":null}},{"id":375,"product_id":375,"name":"Ferrous Sulphate 200mg+Folic Acid 250mg","sku":"3012","price":"1500.00","selling_price":"1500.00","purchase_price":"690.00","quantity":1,"subtotal":1500,"product":{"id":375,"name":"Ferrous Sulphate 200mg+Folic Acid 250mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"690.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3012","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-20T07:13:24.000000Z","brand":null,"category":null}}],"payment_method":"card"}} 
[2026-06-03 15:44:26] production.INFO: Stock deduction for product: Multivit G ( Multivitamin Caps)  
[2026-06-03 15:44:26] production.INFO: Old stock: 8.00  
[2026-06-03 15:44:26] production.INFO: Quantity deducted: 2  
[2026-06-03 15:44:26] production.INFO: New stock: 6  
[2026-06-03 15:44:26] production.INFO: Stock deduction for product: Ferrous Sulphate 200mg+Folic Acid 250mg  
[2026-06-03 15:44:26] production.INFO: Old stock: 53.00  
[2026-06-03 15:44:26] production.INFO: Quantity deducted: 1  
[2026-06-03 15:44:26] production.INFO: New stock: 52  
[2026-06-03 15:44:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780494265244"} 
[2026-06-03 15:46:59] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780494419387","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":885,"product_id":885,"name":"Triphen 4 flu","sku":"PRD-00885","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":885,"name":"Triphen 4 flu","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"11000.00","last_purchase_price":"11000.00","selling_price":"22000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00885","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:35:55.000000Z","updated_at":"2026-05-26T07:35:55.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":3,"subtotal":10500,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"21.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-26T09:50:49.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 15:46:59] production.INFO: Stock deduction for product: Triphen 4 flu  
[2026-06-03 15:46:59] production.INFO: Old stock: 3.00  
[2026-06-03 15:46:59] production.INFO: Quantity deducted: 1  
[2026-06-03 15:46:59] production.INFO: New stock: 2  
[2026-06-03 15:46:59] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-06-03 15:46:59] production.INFO: Old stock: 21.00  
[2026-06-03 15:46:59] production.INFO: Quantity deducted: 3  
[2026-06-03 15:46:59] production.INFO: New stock: 18  
[2026-06-03 15:46:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780494419387"} 
[2026-06-03 16:02:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780495347232","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"65.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T15:33:19.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 16:02:29] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-03 16:02:29] production.INFO: Old stock: 65.00  
[2026-06-03 16:02:29] production.INFO: Quantity deducted: 1  
[2026-06-03 16:02:29] production.INFO: New stock: 64  
[2026-06-03 16:02:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780495347232"} 
[2026-06-03 16:02:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780495371488","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"26.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 16:02:51] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-03 16:02:51] production.INFO: Old stock: 26.00  
[2026-06-03 16:02:51] production.INFO: Quantity deducted: 1  
[2026-06-03 16:02:51] production.INFO: New stock: 25  
[2026-06-03 16:02:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780495371488"} 
[2026-06-03 16:10:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780495837766","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":748,"product_id":748,"name":"Vagid CL Pessary","sku":"3385","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":748,"name":"Vagid CL Pessary","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3385","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-29T11:34:43.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 16:10:39] production.INFO: Stock deduction for product: Vagid CL Pessary  
[2026-06-03 16:10:39] production.INFO: Old stock: 9.00  
[2026-06-03 16:10:39] production.INFO: Quantity deducted: 1  
[2026-06-03 16:10:39] production.INFO: New stock: 8  
[2026-06-03 16:10:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780495837766"} 
[2026-06-03 16:14:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780496075061","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":769,"product_id":769,"name":"XIPRO-500 (Ciprofloxacin 500mg)","sku":"3406","price":"3000.00","selling_price":"3000.00","purchase_price":"1700.00","quantity":1,"subtotal":3000,"product":{"id":769,"name":"XIPRO-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"1700.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3406","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T08:22:10.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 16:14:35] production.INFO: Stock deduction for product: XIPRO-500 (Ciprofloxacin 500mg)  
[2026-06-03 16:14:35] production.INFO: Old stock: 11.00  
[2026-06-03 16:14:35] production.INFO: Quantity deducted: 1  
[2026-06-03 16:14:35] production.INFO: New stock: 10  
[2026-06-03 16:14:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780496075061"} 
[2026-06-03 17:01:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780498865895","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":566,"product_id":566,"name":"MORINGA 100GM","sku":"3203","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":1,"subtotal":1500,"product":{"id":566,"name":"MORINGA 100GM","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3203","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-04-18T07:40:36.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-03 17:01:07] production.INFO: Stock deduction for product: MORINGA 100GM  
[2026-06-03 17:01:07] production.INFO: Old stock: 8.00  
[2026-06-03 17:01:07] production.INFO: Quantity deducted: 1  
[2026-06-03 17:01:07] production.INFO: New stock: 7  
[2026-06-03 17:01:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780498865895"} 
[2026-06-03 17:07:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780499240716","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"64.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T14:02:29.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 17:07:21] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-03 17:07:21] production.INFO: Old stock: 64.00  
[2026-06-03 17:07:21] production.INFO: Quantity deducted: 1  
[2026-06-03 17:07:21] production.INFO: New stock: 63  
[2026-06-03 17:07:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780499240716"} 
[2026-06-03 17:10:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780499401851","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"700.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"42.00","stock":"43.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-01T09:53:40.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":2000},{"method":"cash","amount":500}]}} 
[2026-06-03 17:23:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780500212960","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"184.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T13:00:01.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"25.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T14:02:51.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 17:23:34] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-03 17:23:34] production.INFO: Old stock: 184.00  
[2026-06-03 17:23:34] production.INFO: Quantity deducted: 2  
[2026-06-03 17:23:34] production.INFO: New stock: 182  
[2026-06-03 17:23:34] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-03 17:23:34] production.INFO: Old stock: 25.00  
[2026-06-03 17:23:34] production.INFO: Quantity deducted: 1  
[2026-06-03 17:23:34] production.INFO: New stock: 24  
[2026-06-03 17:23:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780500212960"} 
[2026-06-03 18:11:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780503064868","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"80.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T10:55:28.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 18:11:07] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-03 18:11:07] production.INFO: Old stock: 80.00  
[2026-06-03 18:11:07] production.INFO: Quantity deducted: 1  
[2026-06-03 18:11:07] production.INFO: New stock: 79  
[2026-06-03 18:11:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780503064868"} 
[2026-06-03 18:11:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780503111949","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":644,"product_id":644,"name":"POLYGEL SUSPENSION 200ML","sku":"3281","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":644,"name":"POLYGEL SUSPENSION 200ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-21T08:01:26.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 18:11:53] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 200ML  
[2026-06-03 18:11:53] production.INFO: Old stock: 9.00  
[2026-06-03 18:11:53] production.INFO: Quantity deducted: 1  
[2026-06-03 18:11:53] production.INFO: New stock: 8  
[2026-06-03 18:11:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780503111949"} 
[2026-06-03 18:14:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780503241295","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"24.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T15:23:34.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 18:14:02] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-03 18:14:02] production.INFO: Old stock: 24.00  
[2026-06-03 18:14:02] production.INFO: Quantity deducted: 1  
[2026-06-03 18:14:02] production.INFO: New stock: 23  
[2026-06-03 18:14:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780503241295"} 
[2026-06-03 18:31:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780504261687","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-03T07:31:37.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 18:31:03] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-03 18:31:03] production.INFO: Old stock: 11.00  
[2026-06-03 18:31:03] production.INFO: Quantity deducted: 1  
[2026-06-03 18:31:03] production.INFO: New stock: 10  
[2026-06-03 18:31:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780504261687"} 
[2026-06-03 19:00:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780506002647","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":41,"product_id":41,"name":"AGYCIN (Azithromycin 250mg)","sku":"1150","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":41,"name":"AGYCIN (Azithromycin 250mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1150","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-04-19T11:34:35.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 19:00:04] production.INFO: Stock deduction for product: AGYCIN (Azithromycin 250mg)  
[2026-06-03 19:00:04] production.INFO: Old stock: 3.00  
[2026-06-03 19:00:04] production.INFO: Quantity deducted: 1  
[2026-06-03 19:00:04] production.INFO: New stock: 2  
[2026-06-03 19:00:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780506002647"} 
[2026-06-03 19:20:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780507225022","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"434.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T17:47:44.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 19:20:26] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-03 19:20:26] production.INFO: Old stock: 434.00  
[2026-06-03 19:20:26] production.INFO: Quantity deducted: 6  
[2026-06-03 19:20:26] production.INFO: New stock: 428  
[2026-06-03 19:20:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780507225022"} 
[2026-06-03 19:32:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780507949111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"1.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T15:33:58.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 19:32:29] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-03 19:32:29] production.INFO: Old stock: 1.00  
[2026-06-03 19:32:29] production.INFO: Quantity deducted: 1  
[2026-06-03 19:32:29] production.INFO: New stock: 0  
[2026-06-03 19:32:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780507949111"} 
[2026-06-03 19:58:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780509506025","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T17:31:00.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 19:58:26] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-03 19:58:26] production.INFO: Old stock: 10.00  
[2026-06-03 19:58:26] production.INFO: Quantity deducted: 1  
[2026-06-03 19:58:26] production.INFO: New stock: 9  
[2026-06-03 19:58:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780509506025"} 
[2026-06-03 20:12:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780510321557","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":2,"subtotal":2000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"123.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:37:10.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-03 20:12:01] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-03 20:12:01] production.INFO: Old stock: 123.00  
[2026-06-03 20:12:01] production.INFO: Quantity deducted: 2  
[2026-06-03 20:12:01] production.INFO: New stock: 121  
[2026-06-03 20:12:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780510321557"} 
[2026-06-03 20:39:42] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780511980855","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":108,"product_id":108,"name":"Benylin Original -100ml","sku":"1311","price":"30000.00","selling_price":"30000.00","purchase_price":"15500.00","quantity":1,"subtotal":30000,"product":{"id":108,"name":"Benylin Original -100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"15500.00","last_purchase_price":null,"selling_price":"30000.00","current_stock":"3.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1311","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-21T06:12:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"63.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T15:07:21.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"37.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T09:11:52.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-03 20:39:42] production.INFO: Stock deduction for product: Benylin Original -100ml  
[2026-06-03 20:39:42] production.INFO: Old stock: 3.00  
[2026-06-03 20:39:42] production.INFO: Quantity deducted: 1  
[2026-06-03 20:39:42] production.INFO: New stock: 2  
[2026-06-03 20:39:42] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-03 20:39:42] production.INFO: Old stock: 63.00  
[2026-06-03 20:39:42] production.INFO: Quantity deducted: 1  
[2026-06-03 20:39:42] production.INFO: New stock: 62  
[2026-06-03 20:39:42] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-03 20:39:42] production.INFO: Old stock: 37.00  
[2026-06-03 20:39:42] production.INFO: Quantity deducted: 1  
[2026-06-03 20:39:42] production.INFO: New stock: 36  
[2026-06-03 20:39:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780511980855"} 
[2026-06-04 07:52:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780552343310","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"82.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-30T08:46:09.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 07:52:24] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-04 07:52:24] production.INFO: Old stock: 82.00  
[2026-06-04 07:52:24] production.INFO: Quantity deducted: 1  
[2026-06-04 07:52:24] production.INFO: New stock: 81  
[2026-06-04 07:52:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780552343310"} 
[2026-06-04 08:11:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780553500971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":2,"subtotal":5000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"50.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-09T09:09:13.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 08:11:42] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-04 08:11:42] production.INFO: Old stock: 50.00  
[2026-06-04 08:11:42] production.INFO: Quantity deducted: 2  
[2026-06-04 08:11:42] production.INFO: New stock: 48  
[2026-06-04 08:11:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780553500971"} 
[2026-06-04 08:52:14] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780555933302","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":2,"subtotal":10000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"9.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-29T11:35:01.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":465,"product_id":465,"name":"IBUT-400 (Ibuprofen 400mg)","sku":"3102","price":"1000.00","selling_price":"1000.00","purchase_price":"525.00","quantity":1,"subtotal":1000,"product":{"id":465,"name":"IBUT-400 (Ibuprofen 400mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"525.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3102","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-27T09:36:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 08:52:14] production.INFO: Stock deduction for product: PregStream  
[2026-06-04 08:52:14] production.INFO: Old stock: 9.00  
[2026-06-04 08:52:14] production.INFO: Quantity deducted: 2  
[2026-06-04 08:52:14] production.INFO: New stock: 7  
[2026-06-04 08:52:14] production.INFO: Stock deduction for product: IBUT-400 (Ibuprofen 400mg)  
[2026-06-04 08:52:14] production.INFO: Old stock: 5.00  
[2026-06-04 08:52:14] production.INFO: Quantity deducted: 1  
[2026-06-04 08:52:14] production.INFO: New stock: 4  
[2026-06-04 08:52:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780555933302"} 
[2026-06-04 08:52:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780555963653","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":465,"product_id":465,"name":"IBUT-400 (Ibuprofen 400mg)","sku":"3102","price":"1000.00","selling_price":"1000.00","purchase_price":"525.00","quantity":1,"subtotal":1000,"product":{"id":465,"name":"IBUT-400 (Ibuprofen 400mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"525.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3102","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-04T06:52:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 08:52:43] production.INFO: Stock deduction for product: IBUT-400 (Ibuprofen 400mg)  
[2026-06-04 08:52:43] production.INFO: Old stock: 4.00  
[2026-06-04 08:52:43] production.INFO: Quantity deducted: 1  
[2026-06-04 08:52:43] production.INFO: New stock: 3  
[2026-06-04 08:52:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780555963653"} 
[2026-06-04 08:53:32] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780556012757","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":72,"product_id":72,"name":"Antagit DS Gel 170 ml","sku":"1183","price":"11000.00","selling_price":"11000.00","purchase_price":"4250.00","quantity":1,"subtotal":11000,"product":{"id":72,"name":"Antagit DS Gel 170 ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4250.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1183","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T10:37:35.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T06:52:14.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 08:53:32] production.INFO: Stock deduction for product: Antagit DS Gel 170 ml  
[2026-06-04 08:53:32] production.INFO: Old stock: 12.00  
[2026-06-04 08:53:32] production.INFO: Quantity deducted: 1  
[2026-06-04 08:53:32] production.INFO: New stock: 11  
[2026-06-04 08:53:32] production.INFO: Stock deduction for product: PregStream  
[2026-06-04 08:53:32] production.INFO: Old stock: 7.00  
[2026-06-04 08:53:32] production.INFO: Quantity deducted: 1  
[2026-06-04 08:53:32] production.INFO: New stock: 6  
[2026-06-04 08:53:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780556012757"} 
[2026-06-04 08:54:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780556077742","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"6.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T06:53:32.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 08:54:37] production.INFO: Stock deduction for product: PregStream  
[2026-06-04 08:54:37] production.INFO: Old stock: 6.00  
[2026-06-04 08:54:37] production.INFO: Quantity deducted: 1  
[2026-06-04 08:54:37] production.INFO: New stock: 5  
[2026-06-04 08:54:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780556077742"} 
[2026-06-04 09:25:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780557905602","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"23.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T16:14:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 09:25:07] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-04 09:25:07] production.INFO: Old stock: 23.00  
[2026-06-04 09:25:07] production.INFO: Quantity deducted: 1  
[2026-06-04 09:25:07] production.INFO: New stock: 22  
[2026-06-04 09:25:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780557905602"} 
[2026-06-04 09:25:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780557936433","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":794,"product_id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","sku":"0752","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"32.00","product_type":"Single","tax":null,"sku":"0752","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-03T10:40:36.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 09:25:36] production.INFO: Stock deduction for product: COMIT-100 (Oral Jelly, Sildenafil 100mg)  
[2026-06-04 09:25:36] production.INFO: Old stock: 32.00  
[2026-06-04 09:25:36] production.INFO: Quantity deducted: 2  
[2026-06-04 09:25:36] production.INFO: New stock: 30  
[2026-06-04 09:25:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780557936433"} 
[2026-06-04 09:46:42] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780559201182","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"47.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T13:15:40.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":2,"subtotal":3000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 09:46:42] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-04 09:46:42] production.INFO: Old stock: 47.00  
[2026-06-04 09:46:42] production.INFO: Quantity deducted: 1  
[2026-06-04 09:46:42] production.INFO: New stock: 46  
[2026-06-04 09:46:42] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-04 09:46:42] production.INFO: Old stock: 28.00  
[2026-06-04 09:46:42] production.INFO: Quantity deducted: 2  
[2026-06-04 09:46:42] production.INFO: New stock: 26  
[2026-06-04 09:46:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780559201182"} 
[2026-06-04 10:09:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780560566339","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T10:25:11.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 10:09:27] production.INFO: Stock deduction for product: Softcare Pad  
[2026-06-04 10:09:27] production.INFO: Old stock: 15.00  
[2026-06-04 10:09:27] production.INFO: Quantity deducted: 1  
[2026-06-04 10:09:27] production.INFO: New stock: 14  
[2026-06-04 10:09:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780560566339"} 
[2026-06-04 10:17:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780561063706","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"76.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 10:17:43] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-04 10:17:43] production.INFO: Old stock: 76.00  
[2026-06-04 10:17:43] production.INFO: Quantity deducted: 1  
[2026-06-04 10:17:43] production.INFO: New stock: 75  
[2026-06-04 10:17:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780561063706"} 
[2026-06-04 10:21:13] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780561272721","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":385,"product_id":385,"name":"FUNBACT K SOAP KOJIC ACID","sku":"3022","price":"5000.00","selling_price":"5000.00","purchase_price":"2145.00","quantity":1,"subtotal":5000,"product":{"id":385,"name":"FUNBACT K SOAP KOJIC ACID","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2145.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3022","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"22.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T07:25:07.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 10:21:13] production.INFO: Stock deduction for product: FUNBACT K SOAP KOJIC ACID  
[2026-06-04 10:21:13] production.INFO: Old stock: 2.00  
[2026-06-04 10:21:13] production.INFO: Quantity deducted: 1  
[2026-06-04 10:21:13] production.INFO: New stock: 1  
[2026-06-04 10:21:13] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-04 10:21:13] production.INFO: Old stock: 22.00  
[2026-06-04 10:21:13] production.INFO: Quantity deducted: 1  
[2026-06-04 10:21:13] production.INFO: New stock: 21  
[2026-06-04 10:21:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780561272721"} 
[2026-06-04 10:44:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780562662711","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":175,"product_id":175,"name":"CHORLE HAIR REMOVAL","sku":"1378","price":"12000.00","selling_price":"12000.00","purchase_price":"5750.00","quantity":1,"subtotal":12000,"product":{"id":175,"name":"CHORLE HAIR REMOVAL","business_location":"EDUC Pharmacy","unit_id":"12","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5750.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1378","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-27T02:11:38.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 10:44:24] production.INFO: Stock deduction for product: CHORLE HAIR REMOVAL  
[2026-06-04 10:44:24] production.INFO: Old stock: 10.00  
[2026-06-04 10:44:24] production.INFO: Quantity deducted: 1  
[2026-06-04 10:44:24] production.INFO: New stock: 9  
[2026-06-04 10:44:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780562662711"} 
[2026-06-04 10:53:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780563219597","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"300.00","selling_price":"300.00","purchase_price":"112.00","quantity":40,"subtotal":12000,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"112.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"52.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T18:10:56.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 10:53:41] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-06-04 10:53:41] production.INFO: Old stock: 52.00  
[2026-06-04 10:53:41] production.INFO: Quantity deducted: 40  
[2026-06-04 10:53:41] production.INFO: New stock: 12  
[2026-06-04 10:53:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780563219597"} 
[2026-06-04 11:00:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780563617332","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"76.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-04T08:59:50.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 11:00:17] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-04 11:00:17] production.INFO: Old stock: 76.00  
[2026-06-04 11:00:17] production.INFO: Quantity deducted: 1  
[2026-06-04 11:00:17] production.INFO: New stock: 75  
[2026-06-04 11:00:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780563617332"} 
[2026-06-04 11:14:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780564460627","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"33.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-29T02:16:40.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 11:14:21] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-06-04 11:14:21] production.INFO: Old stock: 33.00  
[2026-06-04 11:14:21] production.INFO: Quantity deducted: 1  
[2026-06-04 11:14:21] production.INFO: New stock: 32  
[2026-06-04 11:14:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780564460627"} 
[2026-06-04 11:15:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780564502562","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":771,"product_id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","sku":"3408","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","business_location":"EDUC Pharmacy","unit_id":"31","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"9.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3408","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T15:12:19.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 11:15:02] production.INFO: Stock deduction for product: Xonase Junior Drop (Xylometazoline 0.05%)  
[2026-06-04 11:15:02] production.INFO: Old stock: 9.00  
[2026-06-04 11:15:02] production.INFO: Quantity deducted: 1  
[2026-06-04 11:15:02] production.INFO: New stock: 8  
[2026-06-04 11:15:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780564502562"} 
[2026-06-04 11:41:54] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1780566113182","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":165,"product_id":165,"name":"CEFUROXIME AXETIL TABLETS (CELZA 500)","sku":"0727","price":"20000.00","selling_price":"20000.00","purchase_price":"5500.00","quantity":1,"subtotal":20000,"product":{"id":165,"name":"CEFUROXIME AXETIL TABLETS (CELZA 500)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0727","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-03T05:38:26.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":110,"product_id":110,"name":"Benzathine 2.4 MU","sku":"0699","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":110,"name":"Benzathine 2.4 MU","business_location":"EDUC Pharmacy","unit_id":"51","category_id":"39","brand_id":"16","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0699","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-06T00:11:16.000000Z","brand":{"id":16,"name":"BENZA","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"56.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T18:10:56.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"300.00","selling_price":"300.00","purchase_price":"112.00","quantity":1,"subtotal":300,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"112.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"12.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T08:53:41.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-06T14:10:09.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 11:41:54] production.INFO: Stock deduction for product: CEFUROXIME AXETIL TABLETS (CELZA 500)  
[2026-06-04 11:41:54] production.INFO: Old stock: 9.00  
[2026-06-04 11:41:54] production.INFO: Quantity deducted: 1  
[2026-06-04 11:41:54] production.INFO: New stock: 8  
[2026-06-04 11:41:54] production.INFO: Stock deduction for product: Benzathine 2.4 MU  
[2026-06-04 11:41:54] production.INFO: Old stock: 20.00  
[2026-06-04 11:41:54] production.INFO: Quantity deducted: 1  
[2026-06-04 11:41:54] production.INFO: New stock: 19  
[2026-06-04 11:41:54] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-04 11:41:54] production.INFO: Old stock: 56.00  
[2026-06-04 11:41:54] production.INFO: Quantity deducted: 1  
[2026-06-04 11:41:54] production.INFO: New stock: 55  
[2026-06-04 11:41:54] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-06-04 11:41:54] production.INFO: Old stock: 12.00  
[2026-06-04 11:41:54] production.INFO: Quantity deducted: 1  
[2026-06-04 11:41:54] production.INFO: New stock: 11  
[2026-06-04 11:41:54] production.INFO: Stock deduction for product: Water for Injection  
[2026-06-04 11:41:54] production.INFO: Old stock: 23.00  
[2026-06-04 11:41:54] production.INFO: Quantity deducted: 1  
[2026-06-04 11:41:54] production.INFO: New stock: 22  
[2026-06-04 11:41:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780566113182"} 
[2026-06-04 11:42:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780566158935","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"41.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T09:07:44.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 11:42:39] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-04 11:42:39] production.INFO: Old stock: 41.00  
[2026-06-04 11:42:39] production.INFO: Quantity deducted: 1  
[2026-06-04 11:42:39] production.INFO: New stock: 40  
[2026-06-04 11:42:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780566158935"} 
[2026-06-04 12:25:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780568748897","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":5,"subtotal":10000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"81.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-04T05:52:24.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"57.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-28T02:40:05.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 12:25:50] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-04 12:25:50] production.INFO: Old stock: 81.00  
[2026-06-04 12:25:50] production.INFO: Quantity deducted: 5  
[2026-06-04 12:25:50] production.INFO: New stock: 76  
[2026-06-04 12:25:50] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-04 12:25:50] production.INFO: Old stock: 57.00  
[2026-06-04 12:25:50] production.INFO: Quantity deducted: 1  
[2026-06-04 12:25:50] production.INFO: New stock: 56  
[2026-06-04 12:25:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780568748897"} 
[2026-06-04 13:41:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780573265535","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":528,"product_id":528,"name":"LOSARTAN POTASSIUM","sku":"3165","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":10,"subtotal":15000,"product":{"id":528,"name":"LOSARTAN POTASSIUM","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"49.00","stock":"51.00","product_type":"Single","tax":null,"sku":"3165","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:28:32.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":849,"product_id":849,"name":"Nifedipine 20mg Sustained Release","sku":"PRD-00849","price":"1500.00","selling_price":"1500.00","purchase_price":"500.00","quantity":10,"subtotal":15000,"product":{"id":849,"name":"Nifedipine 20mg Sustained Release","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1500.00","current_stock":"30.00","stock":"30.00","product_type":"Single","tax":null,"sku":"PRD-00849","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-05","last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:43:40.000000Z","updated_at":"2026-05-05T04:42:04.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":10,"subtotal":15000,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"23.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-27T08:55:01.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-04 13:41:07] production.INFO: Stock deduction for product: LOSARTAN POTASSIUM  
[2026-06-04 13:41:07] production.INFO: Old stock: 49.00  
[2026-06-04 13:41:07] production.INFO: Quantity deducted: 10  
[2026-06-04 13:41:07] production.INFO: New stock: 39  
[2026-06-04 13:41:07] production.INFO: Stock deduction for product: Nifedipine 20mg Sustained Release  
[2026-06-04 13:41:07] production.INFO: Old stock: 30.00  
[2026-06-04 13:41:07] production.INFO: Quantity deducted: 10  
[2026-06-04 13:41:07] production.INFO: New stock: 20  
[2026-06-04 13:41:07] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-06-04 13:41:07] production.INFO: Old stock: 23.00  
[2026-06-04 13:41:07] production.INFO: Quantity deducted: 10  
[2026-06-04 13:41:07] production.INFO: New stock: 13  
[2026-06-04 13:41:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780573265535"} 
[2026-06-04 14:13:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780575224394","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"21.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T08:21:13.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 14:13:45] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-04 14:13:45] production.INFO: Old stock: 21.00  
[2026-06-04 14:13:45] production.INFO: Quantity deducted: 1  
[2026-06-04 14:13:45] production.INFO: New stock: 20  
[2026-06-04 14:13:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780575224394"} 
[2026-06-04 14:20:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780575646561","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T07:46:42.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 14:20:47] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-04 14:20:47] production.INFO: Old stock: 26.00  
[2026-06-04 14:20:47] production.INFO: Quantity deducted: 1  
[2026-06-04 14:20:47] production.INFO: New stock: 25  
[2026-06-04 14:20:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780575646561"} 
[2026-06-04 14:31:47] production.INFO: Stock Adjustment - Initial State {"product_id":"72","previous_quantity":"12.00","previous_selling_price":"11000.00","validated_data":{"product_id":"72","adjustment_type":"subtract","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-04"}} 
[2026-06-04 14:31:47] production.INFO: Stock Adjustment - After Quantity Save {"product_id":72,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-06-04 14:34:24] production.INFO: Product Store - Request Data {"all_data":{"_token":"yWj8vxqRwXaNC5vZsChsNZacjEeWuSqMHgMmJ72O","name":"Antagit  200 ml","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"5500.00","selling_price":"11000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-04 14:34:24] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Antagit  200 ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"11000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-04 14:34:24] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Antagit  200 ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"11000.00","sku":"PRD-00904","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"5500.00","last_purchase_date":"2026-06-04 14:34:24"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-04 14:34:24] production.INFO: Product Store - Product Created {"product_id":904,"product_name":"Antagit  200 ml","product_sku":"PRD-00904"} 
[2026-06-04 14:34:48] production.INFO: Stock Adjustment - Initial State {"product_id":"72","previous_quantity":"2.00","previous_selling_price":"11000.00","validated_data":{"product_id":"72","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"9000.00","new_purchase_price":null,"new_expiry_date":"2026-06-04"}} 
[2026-06-04 14:34:48] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":72,"new_selling_price":"9000.00","current_stock":"2.00","changes_made":"Prices updated only"} 
[2026-06-04 14:37:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780576623696","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":72,"product_id":72,"name":"Antagit DS Gel 170 ml","sku":"1183","price":"9000.00","selling_price":"9000.00","purchase_price":"4250.00","quantity":1,"subtotal":9000,"product":{"id":72,"name":"Antagit DS Gel 170 ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4250.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"2.00","stock":"2.00","product_type":"Single","tax":null,"sku":"1183","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-04T12:34:48.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-04 14:37:04] production.INFO: Stock deduction for product: Antagit DS Gel 170 ml  
[2026-06-04 14:37:04] production.INFO: Old stock: 2.00  
[2026-06-04 14:37:04] production.INFO: Quantity deducted: 1  
[2026-06-04 14:37:04] production.INFO: New stock: 1  
[2026-06-04 14:37:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780576623696"} 
[2026-06-04 14:38:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780576701456","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":72,"product_id":72,"name":"Antagit DS Gel 170 ml","sku":"1183","price":"9000.00","selling_price":"9000.00","purchase_price":"4250.00","quantity":1,"subtotal":9000,"product":{"id":72,"name":"Antagit DS Gel 170 ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4250.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"2.00","stock":"2.00","product_type":"Single","tax":null,"sku":"1183","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-04T12:37:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":2,"subtotal":10000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"9.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T09:02:26.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-04 14:38:21] production.INFO: Stock deduction for product: Antagit DS Gel 170 ml  
[2026-06-04 14:38:21] production.INFO: Old stock: 2.00  
[2026-06-04 14:38:21] production.INFO: Quantity deducted: 1  
[2026-06-04 14:38:21] production.INFO: New stock: 1  
[2026-06-04 14:38:21] production.INFO: Stock deduction for product: PregStream  
[2026-06-04 14:38:21] production.INFO: Old stock: 9.00  
[2026-06-04 14:38:21] production.INFO: Quantity deducted: 2  
[2026-06-04 14:38:21] production.INFO: New stock: 7  
[2026-06-04 14:38:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780576701456"} 
[2026-06-04 14:39:24] production.INFO: Stock Adjustment - Initial State {"product_id":"274","previous_quantity":"10.00","previous_selling_price":"4000.00","validated_data":{"product_id":"274","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-04"}} 
[2026-06-04 14:39:24] production.INFO: Stock Adjustment - After Quantity Save {"product_id":274,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-06-04 14:40:09] production.INFO: Stock Adjustment - Initial State {"product_id":"662","previous_quantity":"14.00","previous_selling_price":"7000.00","validated_data":{"product_id":"662","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-04"}} 
[2026-06-04 14:40:09] production.INFO: Stock Adjustment - After Quantity Save {"product_id":662,"new_quantity":24.0,"current_stock":24.0,"changes_made":"Quantity adjusted"} 
[2026-06-04 14:40:31] production.INFO: Stock Adjustment - Initial State {"product_id":"167","previous_quantity":"55.00","previous_selling_price":"1500.00","validated_data":{"product_id":"167","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"1000.00","new_purchase_price":null,"new_expiry_date":"2026-06-04"}} 
[2026-06-04 14:40:31] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":167,"new_selling_price":"1000.00","current_stock":"55.00","changes_made":"Prices updated only"} 
[2026-06-04 14:57:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780577853253","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-04-21T10:31:35.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 14:57:34] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-06-04 14:57:34] production.INFO: Old stock: 13.00  
[2026-06-04 14:57:34] production.INFO: Quantity deducted: 1  
[2026-06-04 14:57:34] production.INFO: New stock: 12  
[2026-06-04 14:57:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780577853253"} 
[2026-06-04 15:39:04] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780580344303","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":501,"product_id":501,"name":"LARTEM TAB","sku":"3138","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":501,"name":"LARTEM TAB","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"25.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3138","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-29T11:39:17.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"45.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-03T12:04:13.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 15:39:04] production.INFO: Stock deduction for product: LARTEM TAB  
[2026-06-04 15:39:04] production.INFO: Old stock: 25.00  
[2026-06-04 15:39:04] production.INFO: Quantity deducted: 1  
[2026-06-04 15:39:04] production.INFO: New stock: 24  
[2026-06-04 15:39:04] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-04 15:39:04] production.INFO: Old stock: 45.00  
[2026-06-04 15:39:04] production.INFO: Quantity deducted: 1  
[2026-06-04 15:39:04] production.INFO: New stock: 44  
[2026-06-04 15:39:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780580344303"} 
[2026-06-04 16:06:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780582003787","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"20.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T12:13:45.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 16:06:44] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-04 16:06:44] production.INFO: Old stock: 20.00  
[2026-06-04 16:06:44] production.INFO: Quantity deducted: 1  
[2026-06-04 16:06:44] production.INFO: New stock: 19  
[2026-06-04 16:06:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780582003787"} 
[2026-06-04 16:26:28] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780583187604","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":223,"product_id":223,"name":"Delased Chesty Coughs (Syrup)","sku":"1160","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":223,"name":"Delased Chesty Coughs (Syrup)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"31","brand_id":"9","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"1160","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-03-06T00:41:45.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T14:06:44.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"434.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T14:50:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 16:26:28] production.INFO: Stock deduction for product: Delased Chesty Coughs (Syrup)  
[2026-06-04 16:26:28] production.INFO: Old stock: 5.00  
[2026-06-04 16:26:28] production.INFO: Quantity deducted: 1  
[2026-06-04 16:26:28] production.INFO: New stock: 4  
[2026-06-04 16:26:28] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-04 16:26:28] production.INFO: Old stock: 19.00  
[2026-06-04 16:26:28] production.INFO: Quantity deducted: 1  
[2026-06-04 16:26:28] production.INFO: New stock: 18  
[2026-06-04 16:26:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-04 16:26:28] production.INFO: Old stock: 434.00  
[2026-06-04 16:26:28] production.INFO: Quantity deducted: 1  
[2026-06-04 16:26:28] production.INFO: New stock: 433  
[2026-06-04 16:26:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780583187604"} 
[2026-06-04 16:45:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780584303423","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":843,"product_id":843,"name":"Acyclovir 800mg","sku":"PRD-00843","price":"10000.00","selling_price":"10000.00","purchase_price":"1500.00","quantity":1,"subtotal":10000,"product":{"id":843,"name":"Acyclovir 800mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"10000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00843","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":"2026-04-18","created_at":"2026-04-18T14:27:58.000000Z","updated_at":"2026-05-17T04:31:00.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-04 16:45:04] production.INFO: Stock deduction for product: Acyclovir 800mg  
[2026-06-04 16:45:04] production.INFO: Old stock: 4.00  
[2026-06-04 16:45:04] production.INFO: Quantity deducted: 1  
[2026-06-04 16:45:04] production.INFO: New stock: 3  
[2026-06-04 16:45:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780584303423"} 
[2026-06-04 16:45:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780584316369","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"1.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T17:31:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 16:45:17] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-04 16:45:17] production.INFO: Old stock: 1.00  
[2026-06-04 16:45:17] production.INFO: Quantity deducted: 1  
[2026-06-04 16:45:17] production.INFO: New stock: 0  
[2026-06-04 16:45:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780584316369"} 
[2026-06-04 16:47:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780584441801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"300.00","selling_price":"300.00","purchase_price":"112.00","quantity":1,"subtotal":300,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"112.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"11.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T09:41:54.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 16:47:24] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-06-04 16:47:24] production.INFO: Old stock: 11.00  
[2026-06-04 16:47:24] production.INFO: Quantity deducted: 1  
[2026-06-04 16:47:24] production.INFO: New stock: 10  
[2026-06-04 16:47:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780584441801"} 
[2026-06-04 16:59:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780585162431","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"44.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-04T13:39:04.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 16:59:24] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-04 16:59:24] production.INFO: Old stock: 44.00  
[2026-06-04 16:59:24] production.INFO: Quantity deducted: 1  
[2026-06-04 16:59:24] production.INFO: New stock: 43  
[2026-06-04 16:59:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780585162431"} 
[2026-06-04 16:59:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780585178431","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"90.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-20T12:00:53.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 16:59:39] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-06-04 16:59:39] production.INFO: Old stock: 90.00  
[2026-06-04 16:59:39] production.INFO: Quantity deducted: 1  
[2026-06-04 16:59:39] production.INFO: New stock: 89  
[2026-06-04 16:59:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780585178431"} 
[2026-06-04 17:24:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780586642504","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"144.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T11:21:51.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"65.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-02T14:19:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 17:24:05] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-04 17:24:05] production.INFO: Old stock: 144.00  
[2026-06-04 17:24:05] production.INFO: Quantity deducted: 1  
[2026-06-04 17:24:05] production.INFO: New stock: 143  
[2026-06-04 17:24:05] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-04 17:24:05] production.INFO: Old stock: 65.00  
[2026-06-04 17:24:05] production.INFO: Quantity deducted: 1  
[2026-06-04 17:24:05] production.INFO: New stock: 64  
[2026-06-04 17:24:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780586642504"} 
[2026-06-04 17:24:45] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780586684276","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"13.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T10:43:55.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":898,"product_id":898,"name":"Hydrocortisone Cream(Elycort)","sku":"PRD-00898","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":898,"name":"Hydrocortisone Cream(Elycort)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00898","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:20:42.000000Z","updated_at":"2026-06-02T17:20:42.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"98.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-02T15:14:41.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 17:24:45] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-06-04 17:24:45] production.INFO: Old stock: 13.00  
[2026-06-04 17:24:45] production.INFO: Quantity deducted: 1  
[2026-06-04 17:24:45] production.INFO: New stock: 12  
[2026-06-04 17:24:45] production.INFO: Stock deduction for product: Hydrocortisone Cream(Elycort)  
[2026-06-04 17:24:45] production.INFO: Old stock: 5.00  
[2026-06-04 17:24:45] production.INFO: Quantity deducted: 1  
[2026-06-04 17:24:45] production.INFO: New stock: 4  
[2026-06-04 17:24:45] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-04 17:24:45] production.INFO: Old stock: 98.00  
[2026-06-04 17:24:45] production.INFO: Quantity deducted: 2  
[2026-06-04 17:24:45] production.INFO: New stock: 96  
[2026-06-04 17:24:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780586684276"} 
[2026-06-04 17:41:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780587663152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-25T09:59:07.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 17:41:04] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-04 17:41:04] production.INFO: Old stock: 11.00  
[2026-06-04 17:41:04] production.INFO: Quantity deducted: 1  
[2026-06-04 17:41:04] production.INFO: New stock: 10  
[2026-06-04 17:41:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780587663152"} 
[2026-06-04 17:47:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780588021738","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-01T09:42:21.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 17:47:03] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-04 17:47:03] production.INFO: Old stock: 24.00  
[2026-06-04 17:47:03] production.INFO: Quantity deducted: 1  
[2026-06-04 17:47:03] production.INFO: New stock: 23  
[2026-06-04 17:47:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780588021738"} 
[2026-06-04 18:15:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780589706273","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"143.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T15:24:05.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"79.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T16:11:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 18:15:07] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-04 18:15:07] production.INFO: Old stock: 143.00  
[2026-06-04 18:15:07] production.INFO: Quantity deducted: 1  
[2026-06-04 18:15:07] production.INFO: New stock: 142  
[2026-06-04 18:15:07] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-04 18:15:07] production.INFO: Old stock: 79.00  
[2026-06-04 18:15:07] production.INFO: Quantity deducted: 1  
[2026-06-04 18:15:07] production.INFO: New stock: 78  
[2026-06-04 18:15:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780589706273"} 
[2026-06-04 18:15:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780589734113","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"121.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T18:12:01.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 18:15:35] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-04 18:15:35] production.INFO: Old stock: 121.00  
[2026-06-04 18:15:35] production.INFO: Quantity deducted: 1  
[2026-06-04 18:15:35] production.INFO: New stock: 120  
[2026-06-04 18:15:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780589734113"} 
[2026-06-04 18:28:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780590485926","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"18.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T14:26:28.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-04 18:28:07] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-04 18:28:07] production.INFO: Old stock: 18.00  
[2026-06-04 18:28:07] production.INFO: Quantity deducted: 1  
[2026-06-04 18:28:07] production.INFO: New stock: 17  
[2026-06-04 18:28:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780590485926"} 
[2026-06-04 19:00:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780592436457","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"29.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T08:21:45.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 19:00:38] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-04 19:00:38] production.INFO: Old stock: 29.00  
[2026-06-04 19:00:38] production.INFO: Quantity deducted: 1  
[2026-06-04 19:00:38] production.INFO: New stock: 28  
[2026-06-04 19:00:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780592436457"} 
[2026-06-04 19:30:08] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780594205336","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"700.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"41.00","stock":"43.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-03T15:10:03.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"102.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 19:30:08] production.INFO: Stock deduction for product: DOXY CAPSULES (Doxycycline 100mg)  
[2026-06-04 19:30:08] production.INFO: Old stock: 41.00  
[2026-06-04 19:30:08] production.INFO: Quantity deducted: 1  
[2026-06-04 19:30:08] production.INFO: New stock: 40  
[2026-06-04 19:30:08] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-04 19:30:08] production.INFO: Old stock: 102.00  
[2026-06-04 19:30:08] production.INFO: Quantity deducted: 1  
[2026-06-04 19:30:08] production.INFO: New stock: 101  
[2026-06-04 19:30:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780594205336"} 
[2026-06-04 20:46:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780598795801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"428.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T17:20:26.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":689,"product_id":689,"name":"Shaver","sku":"3326","price":"1000.00","selling_price":"1000.00","purchase_price":"416.00","quantity":1,"subtotal":1000,"product":{"id":689,"name":"Shaver","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"416.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3326","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-28T08:03:32.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 20:46:35] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-04 20:46:35] production.INFO: Old stock: 428.00  
[2026-06-04 20:46:35] production.INFO: Quantity deducted: 6  
[2026-06-04 20:46:35] production.INFO: New stock: 422  
[2026-06-04 20:46:35] production.INFO: Stock deduction for product: Shaver  
[2026-06-04 20:46:35] production.INFO: Old stock: 7.00  
[2026-06-04 20:46:35] production.INFO: Quantity deducted: 1  
[2026-06-04 20:46:35] production.INFO: New stock: 6  
[2026-06-04 20:46:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780598795801"} 
[2026-06-04 20:46:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780598810952","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":5,"subtotal":1500,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"422.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T18:46:35.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 20:46:50] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-04 20:46:50] production.INFO: Old stock: 422.00  
[2026-06-04 20:46:50] production.INFO: Quantity deducted: 5  
[2026-06-04 20:46:50] production.INFO: New stock: 417  
[2026-06-04 20:46:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780598810952"} 
[2026-06-04 20:48:55] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780598935040","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":780,"product_id":780,"name":"ZYLO-P SOLUTION (POVIDONE IODINE 10%) 100ML","sku":"3417","price":"5000.00","selling_price":"5000.00","purchase_price":"2950.00","quantity":2,"subtotal":10000,"product":{"id":780,"name":"ZYLO-P SOLUTION (POVIDONE IODINE 10%) 100ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3417","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-04-09T10:35:17.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-05-30T08:59:42.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"300.00","selling_price":"300.00","purchase_price":"112.00","quantity":2,"subtotal":600,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"112.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"10.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T14:47:24.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 20:48:56] production.INFO: Stock deduction for product: ZYLO-P SOLUTION (POVIDONE IODINE 10%) 100ML  
[2026-06-04 20:48:56] production.INFO: Old stock: 10.00  
[2026-06-04 20:48:56] production.INFO: Quantity deducted: 2  
[2026-06-04 20:48:56] production.INFO: New stock: 8  
[2026-06-04 20:48:56] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-06-04 20:48:56] production.INFO: Old stock: 2.00  
[2026-06-04 20:48:56] production.INFO: Quantity deducted: 1  
[2026-06-04 20:48:56] production.INFO: New stock: 1  
[2026-06-04 20:48:56] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-06-04 20:48:56] production.INFO: Old stock: 10.00  
[2026-06-04 20:48:56] production.INFO: Quantity deducted: 2  
[2026-06-04 20:48:56] production.INFO: New stock: 8  
[2026-06-04 20:48:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780598935040"} 
[2026-06-04 20:54:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780599244983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"433.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T14:26:28.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-04 20:54:04] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-04 20:54:04] production.INFO: Old stock: 433.00  
[2026-06-04 20:54:04] production.INFO: Quantity deducted: 1  
[2026-06-04 20:54:04] production.INFO: New stock: 432  
[2026-06-04 20:54:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780599244983"} 
[2026-06-04 21:00:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780599634135","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T12:39:53.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"airtel_money"}} 
[2026-06-04 21:00:35] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-06-04 21:00:35] production.INFO: Old stock: 32.00  
[2026-06-04 21:00:35] production.INFO: Quantity deducted: 1  
[2026-06-04 21:00:35] production.INFO: New stock: 31  
[2026-06-04 21:00:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780599634135"} 
[2026-06-04 21:03:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780599808734","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"102.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T09:25:09.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 21:03:28] production.INFO: Stock deduction for product: HEDAX  
[2026-06-04 21:03:28] production.INFO: Old stock: 102.00  
[2026-06-04 21:03:28] production.INFO: Quantity deducted: 1  
[2026-06-04 21:03:28] production.INFO: New stock: 101  
[2026-06-04 21:03:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780599808734"} 
[2026-06-04 21:05:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780599912309","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"40.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T09:42:39.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-04 21:05:12] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-04 21:05:12] production.INFO: Old stock: 40.00  
[2026-06-04 21:05:12] production.INFO: Quantity deducted: 1  
[2026-06-04 21:05:12] production.INFO: New stock: 39  
[2026-06-04 21:05:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780599912309"} 
[2026-06-05 08:26:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780640793404","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"62.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T18:39:42.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":3000},{"method":"airtel_money","amount":1000}]}} 
[2026-06-05 08:33:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780641188722","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"62.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-29T04:56:49.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 08:33:07] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-06-05 08:33:07] production.INFO: Old stock: 62.00  
[2026-06-05 08:33:07] production.INFO: Quantity deducted: 1  
[2026-06-05 08:33:07] production.INFO: New stock: 61  
[2026-06-05 08:33:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780641188722"} 
[2026-06-05 08:39:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780641582871","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"101.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T17:30:08.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 08:39:42] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-05 08:39:42] production.INFO: Old stock: 101.00  
[2026-06-05 08:39:42] production.INFO: Quantity deducted: 1  
[2026-06-05 08:39:42] production.INFO: New stock: 100  
[2026-06-05 08:39:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780641582871"} 
[2026-06-05 09:22:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780644159794","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":293,"product_id":293,"name":"ERYTHROMYCIN TABLETS","sku":"0803","price":"7000.00","selling_price":"7000.00","purchase_price":"1439.00","quantity":1,"subtotal":7000,"product":{"id":293,"name":"ERYTHROMYCIN TABLETS","business_location":"EDUC Pharmacy","unit_id":"61","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1439.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0803","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-15T07:31:09.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"78.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T16:15:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 09:22:38] production.INFO: Stock deduction for product: ERYTHROMYCIN TABLETS  
[2026-06-05 09:22:38] production.INFO: Old stock: 48.00  
[2026-06-05 09:22:38] production.INFO: Quantity deducted: 1  
[2026-06-05 09:22:38] production.INFO: New stock: 47  
[2026-06-05 09:22:38] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-05 09:22:38] production.INFO: Old stock: 78.00  
[2026-06-05 09:22:38] production.INFO: Quantity deducted: 1  
[2026-06-05 09:22:38] production.INFO: New stock: 77  
[2026-06-05 09:22:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780644159794"} 
[2026-06-05 09:32:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780644778415","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":698,"product_id":698,"name":"Sodium Cromoglicate","sku":"3335","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":698,"name":"Sodium Cromoglicate","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3335","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T07:04:38.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-05 09:32:57] production.INFO: Stock deduction for product: Sodium Cromoglicate  
[2026-06-05 09:32:57] production.INFO: Old stock: 2.00  
[2026-06-05 09:32:57] production.INFO: Quantity deducted: 1  
[2026-06-05 09:32:57] production.INFO: New stock: 1  
[2026-06-05 09:32:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780644778415"} 
[2026-06-05 09:33:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780644805168","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":465,"product_id":465,"name":"IBUT-400 (Ibuprofen 400mg)","sku":"3102","price":"1000.00","selling_price":"1000.00","purchase_price":"525.00","quantity":1,"subtotal":1000,"product":{"id":465,"name":"IBUT-400 (Ibuprofen 400mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"525.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3102","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-04T09:02:26.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 09:33:24] production.INFO: Stock deduction for product: IBUT-400 (Ibuprofen 400mg)  
[2026-06-05 09:33:24] production.INFO: Old stock: 4.00  
[2026-06-05 09:33:24] production.INFO: Quantity deducted: 1  
[2026-06-05 09:33:24] production.INFO: New stock: 3  
[2026-06-05 09:33:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780644805168"} 
[2026-06-05 10:00:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780646459903","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"43.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-04T14:59:24.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 10:00:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-05 10:00:59] production.INFO: Old stock: 43.00  
[2026-06-05 10:00:59] production.INFO: Quantity deducted: 1  
[2026-06-05 10:00:59] production.INFO: New stock: 42  
[2026-06-05 10:00:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780646459903"} 
[2026-06-05 10:44:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780649088425","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-28T11:04:44.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 10:44:48] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-05 10:44:48] production.INFO: Old stock: 26.00  
[2026-06-05 10:44:48] production.INFO: Quantity deducted: 1  
[2026-06-05 10:44:48] production.INFO: New stock: 25  
[2026-06-05 10:44:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780649088425"} 
[2026-06-05 10:49:23] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1780649364072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":4,"subtotal":12000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"49.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-01T13:47:28.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"61.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-05T06:26:33.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":223,"product_id":223,"name":"Delased Chesty Coughs (Syrup)","sku":"1160","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":223,"name":"Delased Chesty Coughs (Syrup)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"31","brand_id":"9","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"1160","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-04T14:26:28.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":477,"product_id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","sku":"3114","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3114","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T05:21:09.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":2,"subtotal":3000,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"40.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T17:24:05.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-05 10:49:23] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-05 10:49:23] production.INFO: Old stock: 49.00  
[2026-06-05 10:49:23] production.INFO: Quantity deducted: 4  
[2026-06-05 10:49:23] production.INFO: New stock: 45  
[2026-06-05 10:49:23] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-05 10:49:23] production.INFO: Old stock: 61.00  
[2026-06-05 10:49:23] production.INFO: Quantity deducted: 1  
[2026-06-05 10:49:23] production.INFO: New stock: 60  
[2026-06-05 10:49:23] production.INFO: Stock deduction for product: Delased Chesty Coughs (Syrup)  
[2026-06-05 10:49:23] production.INFO: Old stock: 4.00  
[2026-06-05 10:49:23] production.INFO: Quantity deducted: 1  
[2026-06-05 10:49:23] production.INFO: New stock: 3  
[2026-06-05 10:49:23] production.INFO: Stock deduction for product: KEMOXYL (Amoxicillin Dry Suspension)  
[2026-06-05 10:49:23] production.INFO: Old stock: 4.00  
[2026-06-05 10:49:23] production.INFO: Quantity deducted: 1  
[2026-06-05 10:49:23] production.INFO: New stock: 3  
[2026-06-05 10:49:23] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-05 10:49:23] production.INFO: Old stock: 40.00  
[2026-06-05 10:49:23] production.INFO: Quantity deducted: 2  
[2026-06-05 10:49:23] production.INFO: New stock: 38  
[2026-06-05 10:49:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780649364072"} 
[2026-06-05 10:56:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780649787407","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"60.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-05T08:49:23.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 10:56:26] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-05 10:56:26] production.INFO: Old stock: 60.00  
[2026-06-05 10:56:26] production.INFO: Quantity deducted: 1  
[2026-06-05 10:56:26] production.INFO: New stock: 59  
[2026-06-05 10:56:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780649787407"} 
[2026-06-05 11:02:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780650139485","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"17.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T16:28:07.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-05 11:02:20] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-05 11:02:20] production.INFO: Old stock: 17.00  
[2026-06-05 11:02:20] production.INFO: Quantity deducted: 1  
[2026-06-05 11:02:20] production.INFO: New stock: 16  
[2026-06-05 11:02:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780650139485"} 
[2026-06-05 11:13:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780650781420","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":110,"product_id":110,"name":"Benzathine 2.4 MU","sku":"0699","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":110,"name":"Benzathine 2.4 MU","business_location":"EDUC Pharmacy","unit_id":"51","category_id":"39","brand_id":"16","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0699","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-04T09:41:54.000000Z","brand":{"id":16,"name":"BENZA","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 11:13:01] production.INFO: Stock deduction for product: Benzathine 2.4 MU  
[2026-06-05 11:13:01] production.INFO: Old stock: 19.00  
[2026-06-05 11:13:01] production.INFO: Quantity deducted: 1  
[2026-06-05 11:13:01] production.INFO: New stock: 18  
[2026-06-05 11:13:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780650781420"} 
[2026-06-05 11:18:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780651092787","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"16.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T09:02:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 11:18:13] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-05 11:18:13] production.INFO: Old stock: 16.00  
[2026-06-05 11:18:13] production.INFO: Quantity deducted: 1  
[2026-06-05 11:18:13] production.INFO: New stock: 15  
[2026-06-05 11:18:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780651092787"} 
[2026-06-05 11:34:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780652088248","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":901,"product_id":901,"name":"Collogate Herbal","sku":"PRD-00901","price":"6000.00","selling_price":"6000.00","purchase_price":"3500.00","quantity":1,"subtotal":6000,"product":{"id":901,"name":"Collogate Herbal","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","last_purchase_price":"3500.00","selling_price":"6000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00901","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:30:45.000000Z","updated_at":"2026-06-03T10:30:45.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":857,"product_id":857,"name":"Colgate Tooth Brush","sku":"PRD-00857","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":857,"name":"Colgate Tooth Brush","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00857","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:18:54.000000Z","updated_at":"2026-05-28T09:33:52.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 11:34:47] production.INFO: Stock deduction for product: Collogate Herbal  
[2026-06-05 11:34:47] production.INFO: Old stock: 12.00  
[2026-06-05 11:34:47] production.INFO: Quantity deducted: 1  
[2026-06-05 11:34:47] production.INFO: New stock: 11  
[2026-06-05 11:34:47] production.INFO: Stock deduction for product: Colgate Tooth Brush  
[2026-06-05 11:34:47] production.INFO: Old stock: 7.00  
[2026-06-05 11:34:47] production.INFO: Quantity deducted: 1  
[2026-06-05 11:34:47] production.INFO: New stock: 6  
[2026-06-05 11:34:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780652088248"} 
[2026-06-05 11:36:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780652177423","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":498,"product_id":498,"name":"LACILLIN-250 (Ampicillin 250mg)","sku":"3135","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":1,"subtotal":1500,"product":{"id":498,"name":"LACILLIN-250 (Ampicillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3135","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-18T09:42:48.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"100.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T06:39:42.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"89.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-04T14:59:39.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 11:36:17] production.INFO: Stock deduction for product: LACILLIN-250 (Ampicillin 250mg)  
[2026-06-05 11:36:17] production.INFO: Old stock: 21.00  
[2026-06-05 11:36:17] production.INFO: Quantity deducted: 1  
[2026-06-05 11:36:17] production.INFO: New stock: 20  
[2026-06-05 11:36:17] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-05 11:36:17] production.INFO: Old stock: 100.00  
[2026-06-05 11:36:17] production.INFO: Quantity deducted: 1  
[2026-06-05 11:36:17] production.INFO: New stock: 99  
[2026-06-05 11:36:17] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-06-05 11:36:17] production.INFO: Old stock: 89.00  
[2026-06-05 11:36:17] production.INFO: Quantity deducted: 1  
[2026-06-05 11:36:17] production.INFO: New stock: 88  
[2026-06-05 11:36:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780652177423"} 
[2026-06-05 11:41:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780652490911","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"15.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T09:18:13.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 11:41:31] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-05 11:41:31] production.INFO: Old stock: 15.00  
[2026-06-05 11:41:31] production.INFO: Quantity deducted: 1  
[2026-06-05 11:41:31] production.INFO: New stock: 14  
[2026-06-05 11:41:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780652490911"} 
[2026-06-05 12:01:07] production.INFO: Stock Adjustment - Initial State {"product_id":"39","previous_quantity":"307.00","previous_selling_price":"200.00","validated_data":{"product_id":"39","adjustment_type":"subtract","quantity":"300","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:01:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":39,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:01:08] production.INFO: Stock Adjustment - Initial State {"product_id":"39","previous_quantity":"7.00","previous_selling_price":"5000.00","validated_data":{"product_id":"39","adjustment_type":"subtract","quantity":"300","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:02:44] production.INFO: Stock Adjustment - Initial State {"product_id":"763","previous_quantity":"119.00","previous_selling_price":"100.00","validated_data":{"product_id":"763","adjustment_type":"add","quantity":"300","reason":"new_stock","new_selling_price":"200.00","new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:02:44] production.INFO: Stock Adjustment - After Quantity Save {"product_id":763,"new_quantity":419.0,"current_stock":419.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:07:45] production.INFO: Stock Adjustment - Initial State {"product_id":"387","previous_quantity":"3.00","previous_selling_price":"5000.00","validated_data":{"product_id":"387","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:07:45] production.INFO: Stock Adjustment - After Quantity Save {"product_id":387,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:07:45] production.INFO: Stock Adjustment - Initial State {"product_id":"387","previous_quantity":"13.00","previous_selling_price":"5000.00","validated_data":{"product_id":"387","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:07:45] production.INFO: Stock Adjustment - After Quantity Save {"product_id":387,"new_quantity":23.0,"current_stock":23.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:08:50] production.INFO: Stock Adjustment - Initial State {"product_id":"836","previous_quantity":"2.00","previous_selling_price":"1500.00","validated_data":{"product_id":"836","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:08:50] production.INFO: Stock Adjustment - After Quantity Save {"product_id":836,"new_quantity":32.0,"current_stock":32.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:13:30] production.INFO: Stock Adjustment - Initial State {"product_id":"27","previous_quantity":"1.00","previous_selling_price":"4500.00","validated_data":{"product_id":"27","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:13:30] production.INFO: Stock Adjustment - After Quantity Save {"product_id":27,"new_quantity":16.0,"current_stock":16.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:13:57] production.INFO: Stock Adjustment - Initial State {"product_id":"28","previous_quantity":"0.00","previous_selling_price":"10000.00","validated_data":{"product_id":"28","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:13:57] production.INFO: Stock Adjustment - After Quantity Save {"product_id":28,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:14:26] production.INFO: Stock Adjustment - Initial State {"product_id":"29","previous_quantity":"2.00","previous_selling_price":"10000.00","validated_data":{"product_id":"29","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:14:26] production.INFO: Stock Adjustment - After Quantity Save {"product_id":29,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:15:10] production.INFO: Stock Adjustment - Initial State {"product_id":"407","previous_quantity":"0.00","previous_selling_price":"2000.00","validated_data":{"product_id":"407","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:15:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":407,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:16:13] production.INFO: Stock Adjustment - Initial State {"product_id":"40","previous_quantity":"2.00","previous_selling_price":"3000.00","validated_data":{"product_id":"40","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 12:16:13] production.INFO: Stock Adjustment - After Quantity Save {"product_id":40,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 12:38:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780655896229","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":31,"product_id":31,"name":"ACINET 625 TABLETS","sku":"0662","price":"9500.00","selling_price":"9500.00","purchase_price":"5150.00","quantity":1,"subtotal":9500,"product":{"id":31,"name":"ACINET 625 TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5150.00","last_purchase_price":null,"selling_price":"9500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0662","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-09T04:39:28.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"46.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-04T07:46:42.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"77.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T07:22:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-05 12:38:16] production.INFO: Stock deduction for product: ACINET 625 TABLETS  
[2026-06-05 12:38:16] production.INFO: Old stock: 2.00  
[2026-06-05 12:38:16] production.INFO: Quantity deducted: 1  
[2026-06-05 12:38:16] production.INFO: New stock: 1  
[2026-06-05 12:38:16] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-05 12:38:16] production.INFO: Old stock: 46.00  
[2026-06-05 12:38:16] production.INFO: Quantity deducted: 1  
[2026-06-05 12:38:16] production.INFO: New stock: 45  
[2026-06-05 12:38:16] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-05 12:38:16] production.INFO: Old stock: 77.00  
[2026-06-05 12:38:16] production.INFO: Quantity deducted: 1  
[2026-06-05 12:38:16] production.INFO: New stock: 76  
[2026-06-05 12:38:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780655896229"} 
[2026-06-05 13:05:02] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780657501568","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"19.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-02T08:24:50.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":39,"product_id":39,"name":"Adhesive Plaster 10 cm","sku":"1169","price":"5000.00","selling_price":"5000.00","purchase_price":"2400.00","quantity":1,"subtotal":5000,"product":{"id":39,"name":"Adhesive Plaster 10 cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2400.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"1169","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T10:01:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 13:05:02] production.INFO: Stock deduction for product: Iduplus  
[2026-06-05 13:05:02] production.INFO: Old stock: 19.00  
[2026-06-05 13:05:02] production.INFO: Quantity deducted: 1  
[2026-06-05 13:05:02] production.INFO: New stock: 18  
[2026-06-05 13:05:02] production.INFO: Stock deduction for product: Adhesive Plaster 10 cm  
[2026-06-05 13:05:02] production.INFO: Old stock: 7.00  
[2026-06-05 13:05:02] production.INFO: Quantity deducted: 1  
[2026-06-05 13:05:02] production.INFO: New stock: 6  
[2026-06-05 13:05:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780657501568"} 
[2026-06-05 13:11:58] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780657918206","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"18.00","stock":"67.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T06:59:06.000000Z","brand":null,"category":null}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-04T15:47:03.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-05 13:11:58] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-05 13:11:58] production.INFO: Old stock: 18.00  
[2026-06-05 13:11:58] production.INFO: Quantity deducted: 1  
[2026-06-05 13:11:58] production.INFO: New stock: 17  
[2026-06-05 13:11:58] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-05 13:11:58] production.INFO: Old stock: 23.00  
[2026-06-05 13:11:58] production.INFO: Quantity deducted: 1  
[2026-06-05 13:11:58] production.INFO: New stock: 22  
[2026-06-05 13:11:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780657918206"} 
[2026-06-05 13:15:04] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780658102998","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":3,"subtotal":600,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"432.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T18:54:04.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"417.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T18:50:28.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 13:15:04] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-05 13:15:04] production.INFO: Old stock: 432.00  
[2026-06-05 13:15:04] production.INFO: Quantity deducted: 3  
[2026-06-05 13:15:04] production.INFO: New stock: 429  
[2026-06-05 13:15:04] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-05 13:15:04] production.INFO: Old stock: 417.00  
[2026-06-05 13:15:04] production.INFO: Quantity deducted: 3  
[2026-06-05 13:15:04] production.INFO: New stock: 414  
[2026-06-05 13:15:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780658102998"} 
[2026-06-05 14:22:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780662150821","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"76.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T10:38:16.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 14:22:32] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-05 14:22:32] production.INFO: Old stock: 76.00  
[2026-06-05 14:22:32] production.INFO: Quantity deducted: 1  
[2026-06-05 14:22:32] production.INFO: New stock: 75  
[2026-06-05 14:22:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780662150821"} 
[2026-06-05 14:46:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780663617902","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T10:13:57.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 14:46:58] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-05 14:46:58] production.INFO: Old stock: 15.00  
[2026-06-05 14:46:58] production.INFO: Quantity deducted: 1  
[2026-06-05 14:46:58] production.INFO: New stock: 14  
[2026-06-05 14:46:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780663617902"} 
[2026-06-05 14:59:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780664397932","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":220,"product_id":220,"name":"Dazel Kit","sku":"1281","price":"32000.00","selling_price":"32000.00","purchase_price":"15000.00","quantity":1,"subtotal":32000,"product":{"id":220,"name":"Dazel Kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"7","brand_id":"9","supplier_id":null,"purchase_price":"15000.00","last_purchase_price":null,"selling_price":"32000.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T13:37:01.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-05 14:59:58] production.INFO: Stock deduction for product: Dazel Kit  
[2026-06-05 14:59:58] production.INFO: Old stock: 10.00  
[2026-06-05 14:59:58] production.INFO: Quantity deducted: 1  
[2026-06-05 14:59:58] production.INFO: New stock: 9  
[2026-06-05 14:59:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780664397932"} 
[2026-06-05 15:02:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780664542499","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"55.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-04T09:41:54.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 15:02:21] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-05 15:02:21] production.INFO: Old stock: 55.00  
[2026-06-05 15:02:21] production.INFO: Quantity deducted: 1  
[2026-06-05 15:02:21] production.INFO: New stock: 54  
[2026-06-05 15:02:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780664542499"} 
[2026-06-05 15:22:07] production.INFO: Stock Adjustment - Initial State {"product_id":"573","previous_quantity":"0.00","previous_selling_price":"12000.00","validated_data":{"product_id":"573","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 15:22:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":573,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 15:22:44] production.INFO: Stock Adjustment - Initial State {"product_id":"574","previous_quantity":"8.00","previous_selling_price":"12000.00","validated_data":{"product_id":"574","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 15:22:44] production.INFO: Stock Adjustment - After Quantity Save {"product_id":574,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 15:23:16] production.INFO: Stock Adjustment - Initial State {"product_id":"710","previous_quantity":"1.00","previous_selling_price":"14000.00","validated_data":{"product_id":"710","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 15:23:16] production.INFO: Stock Adjustment - After Quantity Save {"product_id":710,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 15:23:47] production.INFO: Stock Adjustment - Initial State {"product_id":"746","previous_quantity":"4.00","previous_selling_price":"4000.00","validated_data":{"product_id":"746","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":"4500.00","new_purchase_price":null,"new_expiry_date":"2026-06-05"}} 
[2026-06-05 15:23:47] production.INFO: Stock Adjustment - After Quantity Save {"product_id":746,"new_quantity":104.0,"current_stock":104.0,"changes_made":"Quantity adjusted"} 
[2026-06-05 15:37:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780666622705","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"54.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T13:02:21.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 15:37:03] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-05 15:37:03] production.INFO: Old stock: 54.00  
[2026-06-05 15:37:03] production.INFO: Quantity deducted: 1  
[2026-06-05 15:37:03] production.INFO: New stock: 53  
[2026-06-05 15:37:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780666622705"} 
[2026-06-05 15:49:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780667350934","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":806,"product_id":806,"name":"CREPE BANDAGE (5cm x 4.5m)","sku":"1170","price":"1500.00","selling_price":"1500.00","purchase_price":"500.00","quantity":2,"subtotal":3000,"product":{"id":806,"name":"CREPE BANDAGE (5cm x 4.5m)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"500.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1170","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-23T12:24:20.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 15:49:11] production.INFO: Stock deduction for product: CREPE BANDAGE (5cm x 4.5m)  
[2026-06-05 15:49:11] production.INFO: Old stock: 8.00  
[2026-06-05 15:49:11] production.INFO: Quantity deducted: 2  
[2026-06-05 15:49:11] production.INFO: New stock: 6  
[2026-06-05 15:49:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780667350934"} 
[2026-06-05 15:55:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780667701380","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"14.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T09:41:31.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-05 15:55:01] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-05 15:55:01] production.INFO: Old stock: 14.00  
[2026-06-05 15:55:01] production.INFO: Quantity deducted: 1  
[2026-06-05 15:55:01] production.INFO: New stock: 13  
[2026-06-05 15:55:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780667701380"} 
[2026-06-05 16:16:53] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780669014322","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":220,"product_id":220,"name":"Dazel Kit","sku":"1281","price":"32000.00","selling_price":"32000.00","purchase_price":"15000.00","quantity":1,"subtotal":32000,"product":{"id":220,"name":"Dazel Kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"7","brand_id":"9","supplier_id":null,"purchase_price":"15000.00","last_purchase_price":null,"selling_price":"32000.00","current_stock":"9.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T12:59:58.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"17.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T09:41:17.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 16:16:53] production.INFO: Stock deduction for product: Dazel Kit  
[2026-06-05 16:16:53] production.INFO: Old stock: 9.00  
[2026-06-05 16:16:53] production.INFO: Quantity deducted: 1  
[2026-06-05 16:16:53] production.INFO: New stock: 8  
[2026-06-05 16:16:53] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-06-05 16:16:53] production.INFO: Old stock: 17.00  
[2026-06-05 16:16:53] production.INFO: Quantity deducted: 1  
[2026-06-05 16:16:53] production.INFO: New stock: 16  
[2026-06-05 16:16:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780669014322"} 
[2026-06-05 16:17:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780669024618","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"59.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-05T08:56:26.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 16:17:03] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-05 16:17:03] production.INFO: Old stock: 59.00  
[2026-06-05 16:17:03] production.INFO: Quantity deducted: 1  
[2026-06-05 16:17:03] production.INFO: New stock: 58  
[2026-06-05 16:17:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780669024618"} 
[2026-06-05 16:32:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780669974327","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":659,"product_id":659,"name":"PROPRANOLOL 40MG","sku":"3296","price":"1000.00","selling_price":"1000.00","purchase_price":"409.00","quantity":1,"subtotal":1000,"product":{"id":659,"name":"PROPRANOLOL 40MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"409.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"83.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3296","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T10:39:19.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"30.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T08:19:17.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 16:32:54] production.INFO: Stock deduction for product: PROPRANOLOL 40MG  
[2026-06-05 16:32:54] production.INFO: Old stock: 83.00  
[2026-06-05 16:32:54] production.INFO: Quantity deducted: 1  
[2026-06-05 16:32:54] production.INFO: New stock: 82  
[2026-06-05 16:32:54] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-05 16:32:54] production.INFO: Old stock: 30.00  
[2026-06-05 16:32:54] production.INFO: Quantity deducted: 1  
[2026-06-05 16:32:54] production.INFO: New stock: 29  
[2026-06-05 16:32:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780669974327"} 
[2026-06-05 16:34:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780670074215","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"18.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-05T11:05:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-05 16:34:33] production.INFO: Stock deduction for product: Iduplus  
[2026-06-05 16:34:33] production.INFO: Old stock: 18.00  
[2026-06-05 16:34:33] production.INFO: Quantity deducted: 1  
[2026-06-05 16:34:33] production.INFO: New stock: 17  
[2026-06-05 16:34:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780670074215"} 
[2026-06-05 16:58:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780671517985","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"49.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T09:33:10.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-05 16:58:38] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-05 16:58:38] production.INFO: Old stock: 49.00  
[2026-06-05 16:58:38] production.INFO: Quantity deducted: 1  
[2026-06-05 16:58:38] production.INFO: New stock: 48  
[2026-06-05 16:58:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780671517985"} 
[2026-06-05 17:09:58] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780672197671","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"414.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T11:15:04.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"429.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T11:15:04.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:09:58] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-05 17:09:58] production.INFO: Old stock: 414.00  
[2026-06-05 17:09:58] production.INFO: Quantity deducted: 6  
[2026-06-05 17:09:58] production.INFO: New stock: 408  
[2026-06-05 17:09:58] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-05 17:09:58] production.INFO: Old stock: 429.00  
[2026-06-05 17:09:58] production.INFO: Quantity deducted: 1  
[2026-06-05 17:09:58] production.INFO: New stock: 428  
[2026-06-05 17:09:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780672197671"} 
[2026-06-05 17:16:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780672573533","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"48.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T14:58:38.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:16:14] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-05 17:16:14] production.INFO: Old stock: 48.00  
[2026-06-05 17:16:14] production.INFO: Quantity deducted: 1  
[2026-06-05 17:16:14] production.INFO: New stock: 47  
[2026-06-05 17:16:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780672573533"} 
[2026-06-05 17:17:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780672642012","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"54.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T08:36:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:17:22] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-05 17:17:22] production.INFO: Old stock: 54.00  
[2026-06-05 17:17:22] production.INFO: Quantity deducted: 1  
[2026-06-05 17:17:22] production.INFO: New stock: 53  
[2026-06-05 17:17:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780672642012"} 
[2026-06-05 17:20:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780672846195","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"14.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T12:46:58.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"33.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-02T08:27:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:20:47] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-05 17:20:47] production.INFO: Old stock: 14.00  
[2026-06-05 17:20:47] production.INFO: Quantity deducted: 1  
[2026-06-05 17:20:47] production.INFO: New stock: 13  
[2026-06-05 17:20:47] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-05 17:20:47] production.INFO: Old stock: 33.00  
[2026-06-05 17:20:47] production.INFO: Quantity deducted: 1  
[2026-06-05 17:20:47] production.INFO: New stock: 32  
[2026-06-05 17:20:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780672846195"} 
[2026-06-05 17:22:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780672969475","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":3,"subtotal":450,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"33.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-29T00:05:51.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":643,"product_id":643,"name":"POLYGEL SUSPENSION 100ML","sku":"3280","price":"6500.00","selling_price":"6500.00","purchase_price":"3500.00","quantity":1,"subtotal":6500,"product":{"id":643,"name":"POLYGEL SUSPENSION 100ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"9.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3280","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-28T03:48:01.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:22:50] production.INFO: Stock deduction for product: Tumbocid  
[2026-06-05 17:22:50] production.INFO: Old stock: 33.00  
[2026-06-05 17:22:50] production.INFO: Quantity deducted: 3  
[2026-06-05 17:22:50] production.INFO: New stock: 30  
[2026-06-05 17:22:50] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 100ML  
[2026-06-05 17:22:50] production.INFO: Old stock: 9.00  
[2026-06-05 17:22:50] production.INFO: Quantity deducted: 1  
[2026-06-05 17:22:50] production.INFO: New stock: 8  
[2026-06-05 17:22:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780672969475"} 
[2026-06-05 17:33:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780673584616","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":413,"product_id":413,"name":"Gigapyn","sku":"3050","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":3,"subtotal":33000,"product":{"id":413,"name":"Gigapyn","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3050","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-24T06:04:29.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:33:05] production.INFO: Stock deduction for product: Gigapyn  
[2026-06-05 17:33:05] production.INFO: Old stock: 3.00  
[2026-06-05 17:33:05] production.INFO: Quantity deducted: 3  
[2026-06-05 17:33:05] production.INFO: New stock: 0  
[2026-06-05 17:33:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780673584616"} 
[2026-06-05 17:38:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780673888071","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"32.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T09:14:21.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"120.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-04T16:15:35.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"88.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-05T09:36:17.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 17:38:09] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-06-05 17:38:09] production.INFO: Old stock: 32.00  
[2026-06-05 17:38:09] production.INFO: Quantity deducted: 1  
[2026-06-05 17:38:09] production.INFO: New stock: 31  
[2026-06-05 17:38:09] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-05 17:38:09] production.INFO: Old stock: 120.00  
[2026-06-05 17:38:09] production.INFO: Quantity deducted: 1  
[2026-06-05 17:38:09] production.INFO: New stock: 119  
[2026-06-05 17:38:09] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-06-05 17:38:09] production.INFO: Old stock: 88.00  
[2026-06-05 17:38:09] production.INFO: Quantity deducted: 1  
[2026-06-05 17:38:09] production.INFO: New stock: 87  
[2026-06-05 17:38:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780673888071"} 
[2026-06-05 18:12:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780675939399","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"11.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T13:50:50.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 18:12:20] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-05 18:12:20] production.INFO: Old stock: 11.00  
[2026-06-05 18:12:20] production.INFO: Quantity deducted: 1  
[2026-06-05 18:12:20] production.INFO: New stock: 10  
[2026-06-05 18:12:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780675939399"} 
[2026-06-05 18:26:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780676761035","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":383,"product_id":383,"name":"FRICKS SYRUP 100MLS","sku":"3020","price":"7500.00","selling_price":"7500.00","purchase_price":"3950.00","quantity":1,"subtotal":7500,"product":{"id":383,"name":"FRICKS SYRUP 100MLS","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3020","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-25T11:08:41.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 18:26:02] production.INFO: Stock deduction for product: FRICKS SYRUP 100MLS  
[2026-06-05 18:26:02] production.INFO: Old stock: 5.00  
[2026-06-05 18:26:02] production.INFO: Quantity deducted: 1  
[2026-06-05 18:26:02] production.INFO: New stock: 4  
[2026-06-05 18:26:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780676761035"} 
[2026-06-05 18:26:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780676778723","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":611,"product_id":611,"name":"OPRA TABLET (Loperamide 2mg)","sku":"3248","price":"1500.00","selling_price":"1500.00","purchase_price":"700.00","quantity":1,"subtotal":1500,"product":{"id":611,"name":"OPRA TABLET (Loperamide 2mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"20.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3248","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-27T09:52:18.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 18:26:18] production.INFO: Stock deduction for product: OPRA TABLET (Loperamide 2mg)  
[2026-06-05 18:26:18] production.INFO: Old stock: 20.00  
[2026-06-05 18:26:18] production.INFO: Quantity deducted: 1  
[2026-06-05 18:26:18] production.INFO: New stock: 19  
[2026-06-05 18:26:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780676778723"} 
[2026-06-05 18:37:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780677462889","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"BROXOL Junior (Syrup), 100ml","sku":"0713","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":140,"name":"BROXOL Junior (Syrup), 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0713","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-21T02:31:28.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 18:37:42] production.INFO: Stock deduction for product: BROXOL Junior (Syrup), 100ml  
[2026-06-05 18:37:42] production.INFO: Old stock: 3.00  
[2026-06-05 18:37:42] production.INFO: Quantity deducted: 1  
[2026-06-05 18:37:42] production.INFO: New stock: 2  
[2026-06-05 18:37:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780677462889"} 
[2026-06-05 18:45:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780677930814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":2,"subtotal":24000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T13:22:07.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"5.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-28T09:23:20.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-05 18:45:31] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-05 18:45:31] production.INFO: Old stock: 15.00  
[2026-06-05 18:45:31] production.INFO: Quantity deducted: 2  
[2026-06-05 18:45:31] production.INFO: New stock: 13  
[2026-06-05 18:45:31] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-06-05 18:45:31] production.INFO: Old stock: 5.00  
[2026-06-05 18:45:31] production.INFO: Quantity deducted: 1  
[2026-06-05 18:45:31] production.INFO: New stock: 4  
[2026-06-05 18:45:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780677930814"} 
[2026-06-05 18:48:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780678104390","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":584,"product_id":584,"name":"Nifedipine 10mg","sku":"3221","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":584,"name":"Nifedipine 10mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"27.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3221","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-06T01:12:14.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 18:48:24] production.INFO: Stock deduction for product: Nifedipine 10mg  
[2026-06-05 18:48:24] production.INFO: Old stock: 27.00  
[2026-06-05 18:48:24] production.INFO: Quantity deducted: 1  
[2026-06-05 18:48:24] production.INFO: New stock: 26  
[2026-06-05 18:48:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780678104390"} 
[2026-06-05 19:03:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780679008682","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-03T11:57:26.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 19:03:29] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-05 19:03:29] production.INFO: Old stock: 21.00  
[2026-06-05 19:03:29] production.INFO: Quantity deducted: 1  
[2026-06-05 19:03:29] production.INFO: New stock: 20  
[2026-06-05 19:03:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780679008682"} 
[2026-06-05 19:07:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780679256737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":841,"product_id":841,"name":"Losartan 50mg Denk","sku":"PRD-00841","price":"25000.00","selling_price":"25000.00","purchase_price":"13500.00","quantity":1,"subtotal":25000,"product":{"id":841,"name":"Losartan 50mg Denk","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"13500.00","last_purchase_price":"13500.00","selling_price":"25000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00841","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T08:00:12.000000Z","updated_at":"2026-04-20T02:18:25.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 19:07:37] production.INFO: Stock deduction for product: Losartan 50mg Denk  
[2026-06-05 19:07:37] production.INFO: Old stock: 1.00  
[2026-06-05 19:07:37] production.INFO: Quantity deducted: 1  
[2026-06-05 19:07:37] production.INFO: New stock: 0  
[2026-06-05 19:07:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780679256737"} 
[2026-06-05 19:27:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780680454228","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T13:36:44.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 19:27:35] production.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-05 19:27:35] production.INFO: Old stock: 5.00  
[2026-06-05 19:27:35] production.INFO: Quantity deducted: 2  
[2026-06-05 19:27:35] production.INFO: New stock: 3  
[2026-06-05 19:27:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780680454228"} 
[2026-06-05 19:33:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780680793826","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":274,"product_id":274,"name":"ELAGRA 100mg Tablets","sku":"0794","price":"4000.00","selling_price":"4000.00","purchase_price":"1500.00","quantity":1,"subtotal":4000,"product":{"id":274,"name":"ELAGRA 100mg Tablets","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"36","brand_id":"28","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"20.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0794","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-04T12:39:24.000000Z","brand":{"id":28,"name":"CORAL LOBARATORIES","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 19:33:14] production.INFO: Stock deduction for product: ELAGRA 100mg Tablets  
[2026-06-05 19:33:14] production.INFO: Old stock: 20.00  
[2026-06-05 19:33:14] production.INFO: Quantity deducted: 1  
[2026-06-05 19:33:14] production.INFO: New stock: 19  
[2026-06-05 19:33:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780680793826"} 
[2026-06-05 19:42:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780681362096","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"13.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T13:55:01.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 19:42:43] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-05 19:42:43] production.INFO: Old stock: 13.00  
[2026-06-05 19:42:43] production.INFO: Quantity deducted: 1  
[2026-06-05 19:42:43] production.INFO: New stock: 12  
[2026-06-05 19:42:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780681362096"} 
[2026-06-05 19:46:44] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780681604775","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":732,"product_id":732,"name":"TRICONAZOLE SYRUP (Metronidazole Benzoate 200mg)","sku":"3369","price":"5000.00","selling_price":"5000.00","purchase_price":"2280.00","quantity":1,"subtotal":5000,"product":{"id":732,"name":"TRICONAZOLE SYRUP (Metronidazole Benzoate 200mg)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"2280.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3369","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-03-06T01:15:25.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"12.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T17:42:43.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 19:46:44] production.INFO: Stock deduction for product: TRICONAZOLE SYRUP (Metronidazole Benzoate 200mg)  
[2026-06-05 19:46:44] production.INFO: Old stock: 3.00  
[2026-06-05 19:46:44] production.INFO: Quantity deducted: 1  
[2026-06-05 19:46:44] production.INFO: New stock: 2  
[2026-06-05 19:46:44] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-05 19:46:44] production.INFO: Old stock: 12.00  
[2026-06-05 19:46:44] production.INFO: Quantity deducted: 1  
[2026-06-05 19:46:44] production.INFO: New stock: 11  
[2026-06-05 19:46:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780681604775"} 
[2026-06-05 20:56:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780685798030","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"75.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T12:22:32.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"99.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T09:36:17.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 20:56:38] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-05 20:56:38] production.INFO: Old stock: 75.00  
[2026-06-05 20:56:38] production.INFO: Quantity deducted: 1  
[2026-06-05 20:56:38] production.INFO: New stock: 74  
[2026-06-05 20:56:38] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-05 20:56:38] production.INFO: Old stock: 99.00  
[2026-06-05 20:56:38] production.INFO: Quantity deducted: 1  
[2026-06-05 20:56:38] production.INFO: New stock: 98  
[2026-06-05 20:56:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780685798030"} 
[2026-06-05 20:57:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780685842469","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":794,"product_id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","sku":"0752","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"30.00","stock":"32.00","product_type":"Single","tax":null,"sku":"0752","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-04T07:25:36.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-05 20:57:22] production.INFO: Stock deduction for product: COMIT-100 (Oral Jelly, Sildenafil 100mg)  
[2026-06-05 20:57:22] production.INFO: Old stock: 30.00  
[2026-06-05 20:57:22] production.INFO: Quantity deducted: 2  
[2026-06-05 20:57:22] production.INFO: New stock: 28  
[2026-06-05 20:57:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780685842469"} 
[2026-06-06 10:19:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780733962873","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"11.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T17:46:44.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-06 10:19:23] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-06 10:19:23] production.INFO: Old stock: 11.00  
[2026-06-06 10:19:23] production.INFO: Quantity deducted: 1  
[2026-06-06 10:19:23] production.INFO: New stock: 10  
[2026-06-06 10:19:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780733962873"} 
[2026-06-06 10:34:36] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780734875677","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":583,"product_id":583,"name":"Neuron Ease Tab","sku":"3220","price":"5500.00","selling_price":"5500.00","purchase_price":"3000.00","quantity":1,"subtotal":5500,"product":{"id":583,"name":"Neuron Ease Tab","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3220","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-24T02:30:34.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":2,"subtotal":2000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"98.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T18:56:38.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 10:34:36] production.INFO: Stock deduction for product: Neuron Ease Tab  
[2026-06-06 10:34:36] production.INFO: Old stock: 4.00  
[2026-06-06 10:34:36] production.INFO: Quantity deducted: 1  
[2026-06-06 10:34:36] production.INFO: New stock: 3  
[2026-06-06 10:34:36] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-06 10:34:36] production.INFO: Old stock: 98.00  
[2026-06-06 10:34:36] production.INFO: Quantity deducted: 2  
[2026-06-06 10:34:36] production.INFO: New stock: 96  
[2026-06-06 10:34:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780734875677"} 
[2026-06-06 11:15:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780737344860","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"74.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T18:56:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 11:15:46] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-06 11:15:46] production.INFO: Old stock: 74.00  
[2026-06-06 11:15:46] production.INFO: Quantity deducted: 1  
[2026-06-06 11:15:46] production.INFO: New stock: 73  
[2026-06-06 11:15:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780737344860"} 
[2026-06-06 11:44:59] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780739097094","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-06-04T18:48:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":555,"product_id":555,"name":"METHYLATED SPIRIT 200ML","sku":"3192","price":"5500.00","selling_price":"5500.00","purchase_price":"2450.00","quantity":1,"subtotal":5500,"product":{"id":555,"name":"METHYLATED SPIRIT 200ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3192","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-28T07:57:07.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 11:44:59] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-06-06 11:44:59] production.INFO: Old stock: 1.00  
[2026-06-06 11:44:59] production.INFO: Quantity deducted: 1  
[2026-06-06 11:44:59] production.INFO: New stock: 0  
[2026-06-06 11:44:59] production.INFO: Stock deduction for product: METHYLATED SPIRIT 200ML  
[2026-06-06 11:44:59] production.INFO: Old stock: 2.00  
[2026-06-06 11:44:59] production.INFO: Quantity deducted: 1  
[2026-06-06 11:44:59] production.INFO: New stock: 1  
[2026-06-06 11:44:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780739097094"} 
[2026-06-06 12:10:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780740627987","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":410,"product_id":410,"name":"Gentanycin Eye Drops (WW-Genta)","sku":"3047","price":"2500.00","selling_price":"2500.00","purchase_price":"1000.00","quantity":1,"subtotal":2500,"product":{"id":410,"name":"Gentanycin Eye Drops (WW-Genta)","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3047","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T15:24:31.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 12:10:30] production.INFO: Stock deduction for product: Gentanycin Eye Drops (WW-Genta)  
[2026-06-06 12:10:30] production.INFO: Old stock: 7.00  
[2026-06-06 12:10:30] production.INFO: Quantity deducted: 1  
[2026-06-06 12:10:30] production.INFO: New stock: 6  
[2026-06-06 12:10:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780740627987"} 
[2026-06-06 12:10:56] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780740654807","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T17:58:26.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"17.00","stock":"67.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T11:11:58.000000Z","brand":null,"category":null}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"73.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T09:15:46.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 12:10:56] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-06 12:10:56] production.INFO: Old stock: 9.00  
[2026-06-06 12:10:56] production.INFO: Quantity deducted: 1  
[2026-06-06 12:10:56] production.INFO: New stock: 8  
[2026-06-06 12:10:56] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-06 12:10:56] production.INFO: Old stock: 17.00  
[2026-06-06 12:10:56] production.INFO: Quantity deducted: 1  
[2026-06-06 12:10:56] production.INFO: New stock: 16  
[2026-06-06 12:10:56] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-06 12:10:56] production.INFO: Old stock: 73.00  
[2026-06-06 12:10:56] production.INFO: Quantity deducted: 1  
[2026-06-06 12:10:56] production.INFO: New stock: 72  
[2026-06-06 12:10:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780740654807"} 
[2026-06-06 12:23:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780741431777","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"13.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T15:20:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 12:23:53] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-06 12:23:53] production.INFO: Old stock: 13.00  
[2026-06-06 12:23:53] production.INFO: Quantity deducted: 1  
[2026-06-06 12:23:53] production.INFO: New stock: 12  
[2026-06-06 12:23:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780741431777"} 
[2026-06-06 12:34:24] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780742062502","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"58.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-05T14:17:03.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"72.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T10:10:56.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 12:34:24] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-06 12:34:24] production.INFO: Old stock: 58.00  
[2026-06-06 12:34:24] production.INFO: Quantity deducted: 1  
[2026-06-06 12:34:24] production.INFO: New stock: 57  
[2026-06-06 12:34:24] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-06 12:34:24] production.INFO: Old stock: 72.00  
[2026-06-06 12:34:24] production.INFO: Quantity deducted: 1  
[2026-06-06 12:34:24] production.INFO: New stock: 71  
[2026-06-06 12:34:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780742062502"} 
[2026-06-06 12:48:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780742905399","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-04T12:57:34.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 12:48:25] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-06-06 12:48:25] production.INFO: Old stock: 12.00  
[2026-06-06 12:48:25] production.INFO: Quantity deducted: 1  
[2026-06-06 12:48:25] production.INFO: New stock: 11  
[2026-06-06 12:48:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780742905399"} 
[2026-06-06 12:58:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780743529531","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"32.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-05T10:08:50.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-06 12:58:50] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-06 12:58:50] production.INFO: Old stock: 32.00  
[2026-06-06 12:58:50] production.INFO: Quantity deducted: 1  
[2026-06-06 12:58:50] production.INFO: New stock: 31  
[2026-06-06 12:58:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780743529531"} 
[2026-06-06 13:32:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780745560809","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T17:27:35.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 13:32:40] production.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-06 13:32:40] production.INFO: Old stock: 3.00  
[2026-06-06 13:32:40] production.INFO: Quantity deducted: 2  
[2026-06-06 13:32:40] production.INFO: New stock: 1  
[2026-06-06 13:32:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780745560809"} 
[2026-06-06 13:55:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780746929947","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":10,"subtotal":5000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"274.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T10:48:47.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 13:55:33] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-06 13:55:33] production.INFO: Old stock: 274.00  
[2026-06-06 13:55:33] production.INFO: Quantity deducted: 10  
[2026-06-06 13:55:33] production.INFO: New stock: 264  
[2026-06-06 13:55:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780746929947"} 
[2026-06-06 14:19:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780748347412","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":586,"product_id":586,"name":"Nifedipine 20mg Retard","sku":"3223","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":3,"subtotal":4500,"product":{"id":586,"name":"Nifedipine 20mg Retard","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3223","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T10:39:02.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"71.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T10:34:24.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 14:19:07] production.INFO: Stock deduction for product: Nifedipine 20mg Retard  
[2026-06-06 14:19:07] production.INFO: Old stock: 5.00  
[2026-06-06 14:19:07] production.INFO: Quantity deducted: 3  
[2026-06-06 14:19:07] production.INFO: New stock: 2  
[2026-06-06 14:19:07] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-06 14:19:07] production.INFO: Old stock: 71.00  
[2026-06-06 14:19:07] production.INFO: Quantity deducted: 1  
[2026-06-06 14:19:07] production.INFO: New stock: 70  
[2026-06-06 14:19:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780748347412"} 
[2026-06-06 14:20:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780748432491","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":8,"subtotal":16000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"44.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-03T07:07:33.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 14:20:33] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-06 14:20:33] production.INFO: Old stock: 44.00  
[2026-06-06 14:20:33] production.INFO: Quantity deducted: 8  
[2026-06-06 14:20:33] production.INFO: New stock: 36  
[2026-06-06 14:20:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780748432491"} 
[2026-06-06 14:24:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780748676810","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":4,"subtotal":8000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"36.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-06T12:20:33.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 14:24:37] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-06 14:24:37] production.INFO: Old stock: 36.00  
[2026-06-06 14:24:37] production.INFO: Quantity deducted: 4  
[2026-06-06 14:24:37] production.INFO: New stock: 32  
[2026-06-06 14:24:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780748676810"} 
[2026-06-06 15:07:40] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780751260066","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T08:24:33.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"45.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T10:38:16.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 15:07:40] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-06 15:07:40] production.INFO: Old stock: 30.00  
[2026-06-06 15:07:40] production.INFO: Quantity deducted: 1  
[2026-06-06 15:07:40] production.INFO: New stock: 29  
[2026-06-06 15:07:40] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-06 15:07:40] production.INFO: Old stock: 45.00  
[2026-06-06 15:07:40] production.INFO: Quantity deducted: 1  
[2026-06-06 15:07:40] production.INFO: New stock: 44  
[2026-06-06 15:07:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780751260066"} 
[2026-06-06 15:08:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780751291529","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"10.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T08:19:23.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 15:08:11] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-06 15:08:11] production.INFO: Old stock: 10.00  
[2026-06-06 15:08:11] production.INFO: Quantity deducted: 1  
[2026-06-06 15:08:11] production.INFO: New stock: 9  
[2026-06-06 15:08:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780751291529"} 
[2026-06-06 15:15:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780751755944","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":192,"product_id":192,"name":"CLONEM (Clotrimazole Cream 1% w/w), 20g","sku":"1056","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":192,"name":"CLONEM (Clotrimazole Cream 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1056","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-29T11:34:32.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-06 15:15:57] production.INFO: Stock deduction for product: CLONEM (Clotrimazole Cream 1% w/w), 20g  
[2026-06-06 15:15:57] production.INFO: Old stock: 4.00  
[2026-06-06 15:15:57] production.INFO: Quantity deducted: 1  
[2026-06-06 15:15:57] production.INFO: New stock: 3  
[2026-06-06 15:15:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780751755944"} 
[2026-06-06 15:55:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780754111609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":477,"product_id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","sku":"3114","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3114","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T08:49:23.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 15:55:12] production.INFO: Stock deduction for product: KEMOXYL (Amoxicillin Dry Suspension)  
[2026-06-06 15:55:12] production.INFO: Old stock: 3.00  
[2026-06-06 15:55:12] production.INFO: Quantity deducted: 1  
[2026-06-06 15:55:12] production.INFO: New stock: 2  
[2026-06-06 15:55:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780754111609"} 
[2026-06-06 17:18:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780759108411","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"42.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T08:00:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"8.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-28T00:11:16.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 17:18:28] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-06 17:18:28] production.INFO: Old stock: 42.00  
[2026-06-06 17:18:28] production.INFO: Quantity deducted: 1  
[2026-06-06 17:18:28] production.INFO: New stock: 41  
[2026-06-06 17:18:28] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-06-06 17:18:28] production.INFO: Old stock: 8.00  
[2026-06-06 17:18:28] production.INFO: Quantity deducted: 1  
[2026-06-06 17:18:28] production.INFO: New stock: 7  
[2026-06-06 17:18:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780759108411"} 
[2026-06-06 17:20:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780759233554","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"17.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-05T14:34:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 17:20:35] production.INFO: Stock deduction for product: Iduplus  
[2026-06-06 17:20:35] production.INFO: Old stock: 17.00  
[2026-06-06 17:20:35] production.INFO: Quantity deducted: 1  
[2026-06-06 17:20:35] production.INFO: New stock: 16  
[2026-06-06 17:20:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780759233554"} 
[2026-06-06 17:35:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780760155952","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"9.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T13:08:11.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 17:35:55] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-06 17:35:55] production.INFO: Old stock: 9.00  
[2026-06-06 17:35:55] production.INFO: Quantity deducted: 1  
[2026-06-06 17:35:55] production.INFO: New stock: 8  
[2026-06-06 17:35:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780760155952"} 
[2026-06-06 17:50:56] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1780761056429","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":760,"product_id":760,"name":"VOLTEM TABLET","sku":"3397","price":"3500.00","selling_price":"3500.00","purchase_price":"1850.00","quantity":1,"subtotal":3500,"product":{"id":760,"name":"VOLTEM TABLET","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3397","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-23T09:49:44.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-04-08T02:05:28.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":56,"product_id":56,"name":"AMINOPHYLLIN 100MG TABLETS","sku":"0670","price":"1500.00","selling_price":"1500.00","purchase_price":"1139.00","quantity":1,"subtotal":1500,"product":{"id":56,"name":"AMINOPHYLLIN 100MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"28","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"1139.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0670","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-29T04:56:49.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"8.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T15:35:55.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 17:50:56] production.INFO: Stock deduction for product: VOLTEM TABLET  
[2026-06-06 17:50:56] production.INFO: Old stock: 8.00  
[2026-06-06 17:50:56] production.INFO: Quantity deducted: 1  
[2026-06-06 17:50:56] production.INFO: New stock: 7  
[2026-06-06 17:50:56] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-06-06 17:50:56] production.INFO: Old stock: 10.00  
[2026-06-06 17:50:56] production.INFO: Quantity deducted: 1  
[2026-06-06 17:50:56] production.INFO: New stock: 9  
[2026-06-06 17:50:56] production.INFO: Stock deduction for product: AMINOPHYLLIN 100MG TABLETS  
[2026-06-06 17:50:56] production.INFO: Old stock: 4.00  
[2026-06-06 17:50:56] production.INFO: Quantity deducted: 1  
[2026-06-06 17:50:56] production.INFO: New stock: 3  
[2026-06-06 17:50:56] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-06 17:50:56] production.INFO: Old stock: 8.00  
[2026-06-06 17:50:56] production.INFO: Quantity deducted: 1  
[2026-06-06 17:50:56] production.INFO: New stock: 7  
[2026-06-06 17:50:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780761056429"} 
[2026-06-06 18:51:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780764708611","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":886,"product_id":886,"name":"One day flucure","sku":"PRD-00886","price":"32000.00","selling_price":"32000.00","purchase_price":"16000.00","quantity":1,"subtotal":32000,"product":{"id":886,"name":"One day flucure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"16000.00","last_purchase_price":"16000.00","selling_price":"32000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00886","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:37:37.000000Z","updated_at":"2026-05-26T07:37:37.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-06 18:51:48] production.INFO: Stock deduction for product: One day flucure  
[2026-06-06 18:51:48] production.INFO: Old stock: 2.00  
[2026-06-06 18:51:48] production.INFO: Quantity deducted: 1  
[2026-06-06 18:51:48] production.INFO: New stock: 1  
[2026-06-06 18:51:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780764708611"} 
[2026-06-06 19:00:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780765248681","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":122,"product_id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","sku":"0708","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"19","supplier_id":null,"purchase_price":"2750.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0708","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-27T05:26:48.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":260,"product_id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"700.00","quantity":3,"subtotal":7500,"product":{"id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"40.00","stock":"43.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-04T17:30:08.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-06 19:00:49] production.INFO: Stock deduction for product: BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g  
[2026-06-06 19:00:49] production.INFO: Old stock: 14.00  
[2026-06-06 19:00:49] production.INFO: Quantity deducted: 1  
[2026-06-06 19:00:49] production.INFO: New stock: 13  
[2026-06-06 19:00:49] production.INFO: Stock deduction for product: DOXY CAPSULES (Doxycycline 100mg)  
[2026-06-06 19:00:49] production.INFO: Old stock: 40.00  
[2026-06-06 19:00:49] production.INFO: Quantity deducted: 3  
[2026-06-06 19:00:49] production.INFO: New stock: 37  
[2026-06-06 19:00:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780765248681"} 
[2026-06-06 19:08:13] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780765693264","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":2,"subtotal":4000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"142.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T16:15:07.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"47.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T15:16:14.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-06 19:08:13] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-06 19:08:13] production.INFO: Old stock: 142.00  
[2026-06-06 19:08:13] production.INFO: Quantity deducted: 2  
[2026-06-06 19:08:13] production.INFO: New stock: 140  
[2026-06-06 19:08:13] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-06 19:08:13] production.INFO: Old stock: 47.00  
[2026-06-06 19:08:13] production.INFO: Quantity deducted: 1  
[2026-06-06 19:08:13] production.INFO: New stock: 46  
[2026-06-06 19:08:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780765693264"} 
[2026-06-06 19:09:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780765775487","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":402,"product_id":402,"name":"Gauze Swabs(10cm)","sku":"3039","price":"18000.00","selling_price":"18000.00","purchase_price":"10000.00","quantity":1,"subtotal":18000,"product":{"id":402,"name":"Gauze Swabs(10cm)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-11T13:53:16.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 19:09:35] production.INFO: Stock deduction for product: Gauze Swabs(10cm)  
[2026-06-06 19:09:35] production.INFO: Old stock: 3.00  
[2026-06-06 19:09:35] production.INFO: Quantity deducted: 1  
[2026-06-06 19:09:35] production.INFO: New stock: 2  
[2026-06-06 19:09:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780765775487"} 
[2026-06-06 19:10:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780765802527","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"7.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T16:49:40.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 19:10:02] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-06 19:10:02] production.INFO: Old stock: 7.00  
[2026-06-06 19:10:02] production.INFO: Quantity deducted: 1  
[2026-06-06 19:10:02] production.INFO: New stock: 6  
[2026-06-06 19:10:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780765802527"} 
[2026-06-06 19:18:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780766318022","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":204,"product_id":204,"name":"DACOLD SYRUP (For Children), 100ml","sku":"0765","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":204,"name":"DACOLD SYRUP (For Children), 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0765","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-25T23:54:09.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 19:18:38] production.INFO: Stock deduction for product: DACOLD SYRUP (For Children), 100ml  
[2026-06-06 19:18:38] production.INFO: Old stock: 9.00  
[2026-06-06 19:18:38] production.INFO: Quantity deducted: 1  
[2026-06-06 19:18:38] production.INFO: New stock: 8  
[2026-06-06 19:18:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780766318022"} 
[2026-06-06 19:28:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780766893732","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"29.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T13:07:40.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 19:28:14] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-06 19:28:14] production.INFO: Old stock: 29.00  
[2026-06-06 19:28:14] production.INFO: Quantity deducted: 1  
[2026-06-06 19:28:14] production.INFO: New stock: 28  
[2026-06-06 19:28:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780766893732"} 
[2026-06-06 19:36:41] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780767401755","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T10:39:40.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"16.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-06T15:20:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 19:36:41] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-06-06 19:36:41] production.INFO: Old stock: 14.00  
[2026-06-06 19:36:41] production.INFO: Quantity deducted: 1  
[2026-06-06 19:36:41] production.INFO: New stock: 13  
[2026-06-06 19:36:41] production.INFO: Stock deduction for product: Iduplus  
[2026-06-06 19:36:41] production.INFO: Old stock: 16.00  
[2026-06-06 19:36:41] production.INFO: Quantity deducted: 1  
[2026-06-06 19:36:41] production.INFO: New stock: 15  
[2026-06-06 19:36:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780767401755"} 
[2026-06-06 19:50:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780768243880","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"70.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T12:19:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"408.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T15:09:58.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-06 19:50:43] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-06 19:50:43] production.INFO: Old stock: 70.00  
[2026-06-06 19:50:43] production.INFO: Quantity deducted: 1  
[2026-06-06 19:50:43] production.INFO: New stock: 69  
[2026-06-06 19:50:43] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-06 19:50:43] production.INFO: Old stock: 408.00  
[2026-06-06 19:50:43] production.INFO: Quantity deducted: 1  
[2026-06-06 19:50:43] production.INFO: New stock: 407  
[2026-06-06 19:50:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780768243880"} 
[2026-06-06 19:51:21] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780768281976","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"104.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T13:23:47.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"407.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T17:50:43.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"428.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T15:09:58.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 19:51:21] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-06 19:51:21] production.INFO: Old stock: 104.00  
[2026-06-06 19:51:21] production.INFO: Quantity deducted: 1  
[2026-06-06 19:51:21] production.INFO: New stock: 103  
[2026-06-06 19:51:21] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-06 19:51:21] production.INFO: Old stock: 407.00  
[2026-06-06 19:51:21] production.INFO: Quantity deducted: 1  
[2026-06-06 19:51:21] production.INFO: New stock: 406  
[2026-06-06 19:51:21] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-06 19:51:21] production.INFO: Old stock: 428.00  
[2026-06-06 19:51:21] production.INFO: Quantity deducted: 1  
[2026-06-06 19:51:21] production.INFO: New stock: 427  
[2026-06-06 19:51:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780768281976"} 
[2026-06-06 20:00:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780768834183","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"46.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-06T17:08:13.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"406.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T17:51:21.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-06 20:00:35] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-06 20:00:35] production.INFO: Old stock: 46.00  
[2026-06-06 20:00:35] production.INFO: Quantity deducted: 1  
[2026-06-06 20:00:35] production.INFO: New stock: 45  
[2026-06-06 20:00:35] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-06 20:00:35] production.INFO: Old stock: 406.00  
[2026-06-06 20:00:35] production.INFO: Quantity deducted: 1  
[2026-06-06 20:00:35] production.INFO: New stock: 405  
[2026-06-06 20:00:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780768834183"} 
[2026-06-06 20:03:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780769030646","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":760,"product_id":760,"name":"VOLTEM TABLET","sku":"3397","price":"3500.00","selling_price":"3500.00","purchase_price":"1850.00","quantity":1,"subtotal":3500,"product":{"id":760,"name":"VOLTEM TABLET","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3397","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T15:50:56.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-06 20:03:51] production.INFO: Stock deduction for product: VOLTEM TABLET  
[2026-06-06 20:03:51] production.INFO: Old stock: 7.00  
[2026-06-06 20:03:51] production.INFO: Quantity deducted: 1  
[2026-06-06 20:03:51] production.INFO: New stock: 6  
[2026-06-06 20:03:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780769030646"} 
[2026-06-06 20:48:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780771686319","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"264.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T11:55:33.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 20:48:07] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-06 20:48:07] production.INFO: Old stock: 264.00  
[2026-06-06 20:48:07] production.INFO: Quantity deducted: 2  
[2026-06-06 20:48:07] production.INFO: New stock: 262  
[2026-06-06 20:48:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780771686319"} 
[2026-06-06 20:54:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780772095925","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"262.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T18:48:07.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-06 20:54:56] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-06 20:54:56] production.INFO: Old stock: 262.00  
[2026-06-06 20:54:56] production.INFO: Quantity deducted: 1  
[2026-06-06 20:54:56] production.INFO: New stock: 261  
[2026-06-06 20:54:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780772095925"} 
[2026-06-07 08:32:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780813957844","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"172.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T15:31:01.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"57.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-06T10:34:24.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 08:32:37] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-07 08:32:37] production.INFO: Old stock: 172.00  
[2026-06-07 08:32:37] production.INFO: Quantity deducted: 1  
[2026-06-07 08:32:37] production.INFO: New stock: 171  
[2026-06-07 08:32:37] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-07 08:32:37] production.INFO: Old stock: 57.00  
[2026-06-07 08:32:37] production.INFO: Quantity deducted: 1  
[2026-06-07 08:32:37] production.INFO: New stock: 56  
[2026-06-07 08:32:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780813957844"} 
[2026-06-07 08:36:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780814217843","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"44.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T13:07:40.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 08:36:58] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-07 08:36:58] production.INFO: Old stock: 44.00  
[2026-06-07 08:36:58] production.INFO: Quantity deducted: 1  
[2026-06-07 08:36:58] production.INFO: New stock: 43  
[2026-06-07 08:36:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780814217843"} 
[2026-06-07 08:40:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780814436082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":723,"product_id":723,"name":"TODAY UNI Tablets","sku":"3360","price":"4000.00","selling_price":"4000.00","purchase_price":"1650.00","quantity":1,"subtotal":4000,"product":{"id":723,"name":"TODAY UNI Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"6.00","stock":"94.00","product_type":"Single","tax":null,"sku":"3360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T17:10:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 08:40:36] production.INFO: Stock deduction for product: TODAY UNI Tablets  
[2026-06-07 08:40:36] production.INFO: Old stock: 6.00  
[2026-06-07 08:40:36] production.INFO: Quantity deducted: 1  
[2026-06-07 08:40:36] production.INFO: New stock: 5  
[2026-06-07 08:40:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780814436082"} 
[2026-06-07 08:49:01] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780814942337","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"13.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T16:45:31.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":5,"subtotal":5000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"68.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-01T15:32:14.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":53,"product_id":53,"name":"ALWO (Albendazole Susp.), 20ml","sku":"0665","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":2,"subtotal":9000,"product":{"id":53,"name":"ALWO (Albendazole Susp.), 20ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"13","brand_id":"12","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"5.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0665","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-22T11:42:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 08:49:01] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-07 08:49:01] production.INFO: Old stock: 13.00  
[2026-06-07 08:49:01] production.INFO: Quantity deducted: 1  
[2026-06-07 08:49:01] production.INFO: New stock: 12  
[2026-06-07 08:49:01] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-07 08:49:01] production.INFO: Old stock: 68.00  
[2026-06-07 08:49:01] production.INFO: Quantity deducted: 5  
[2026-06-07 08:49:01] production.INFO: New stock: 63  
[2026-06-07 08:49:01] production.INFO: Stock deduction for product: ALWO (Albendazole Susp.), 20ml  
[2026-06-07 08:49:01] production.INFO: Old stock: 5.00  
[2026-06-07 08:49:01] production.INFO: Quantity deducted: 2  
[2026-06-07 08:49:01] production.INFO: New stock: 3  
[2026-06-07 08:49:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780814942337"} 
[2026-06-07 08:51:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780815104561","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":2,"subtotal":24000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"11.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-26T11:20:54.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 08:51:45] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-07 08:51:45] production.INFO: Old stock: 11.00  
[2026-06-07 08:51:45] production.INFO: Quantity deducted: 2  
[2026-06-07 08:51:45] production.INFO: New stock: 9  
[2026-06-07 08:51:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780815104561"} 
[2026-06-07 09:20:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780816847469","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"103.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T17:51:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-07 09:20:48] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 09:20:48] production.INFO: Old stock: 103.00  
[2026-06-07 09:20:48] production.INFO: Quantity deducted: 1  
[2026-06-07 09:20:48] production.INFO: New stock: 102  
[2026-06-07 09:20:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780816847469"} 
[2026-06-07 09:59:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780819172464","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"261.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T18:54:56.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-07 09:59:32] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-07 09:59:32] production.INFO: Old stock: 261.00  
[2026-06-07 09:59:32] production.INFO: Quantity deducted: 2  
[2026-06-07 09:59:32] production.INFO: New stock: 259  
[2026-06-07 09:59:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780819172464"} 
[2026-06-07 10:43:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780821785050","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"36.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T18:39:42.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 10:43:05] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-07 10:43:05] production.INFO: Old stock: 36.00  
[2026-06-07 10:43:05] production.INFO: Quantity deducted: 1  
[2026-06-07 10:43:05] production.INFO: New stock: 35  
[2026-06-07 10:43:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780821785050"} 
[2026-06-07 11:28:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780824530093","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"39.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T19:05:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 11:28:49] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-07 11:28:49] production.INFO: Old stock: 39.00  
[2026-06-07 11:28:49] production.INFO: Quantity deducted: 1  
[2026-06-07 11:28:49] production.INFO: New stock: 38  
[2026-06-07 11:28:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780824530093"} 
[2026-06-07 11:40:01] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780825200251","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"56.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-07T06:32:37.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"69.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T17:50:43.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 11:40:01] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-07 11:40:01] production.INFO: Old stock: 56.00  
[2026-06-07 11:40:01] production.INFO: Quantity deducted: 1  
[2026-06-07 11:40:01] production.INFO: New stock: 55  
[2026-06-07 11:40:01] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-07 11:40:01] production.INFO: Old stock: 69.00  
[2026-06-07 11:40:01] production.INFO: Quantity deducted: 1  
[2026-06-07 11:40:01] production.INFO: New stock: 68  
[2026-06-07 11:40:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780825200251"} 
[2026-06-07 11:45:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780825551162","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":442,"product_id":442,"name":"Helicos Kit -Triple Therapy H.Pylori Kit","sku":"3079","price":"70000.00","selling_price":"70000.00","purchase_price":"34500.00","quantity":1,"subtotal":70000,"product":{"id":442,"name":"Helicos Kit -Triple Therapy H.Pylori Kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"34500.00","last_purchase_price":null,"selling_price":"70000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3079","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-26T06:07:20.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 11:45:51] production.INFO: Stock deduction for product: Helicos Kit -Triple Therapy H.Pylori Kit  
[2026-06-07 11:45:51] production.INFO: Old stock: 1.00  
[2026-06-07 11:45:51] production.INFO: Quantity deducted: 1  
[2026-06-07 11:45:51] production.INFO: New stock: 0  
[2026-06-07 11:45:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780825551162"} 
[2026-06-07 12:15:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780827310990","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T17:28:14.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 12:15:11] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-07 12:15:11] production.INFO: Old stock: 28.00  
[2026-06-07 12:15:11] production.INFO: Quantity deducted: 1  
[2026-06-07 12:15:11] production.INFO: New stock: 27  
[2026-06-07 12:15:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780827310990"} 
[2026-06-07 12:26:39] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1780827999437","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":523,"product_id":523,"name":"LONART DS","sku":"3160","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":523,"name":"LONART DS","business_location":"EDUC Pharmacy","unit_id":"63","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"19.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3160","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-26T10:00:20.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-03T13:15:40.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T15:50:56.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"64.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-04T15:24:05.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 12:26:39] production.INFO: Stock deduction for product: LONART DS  
[2026-06-07 12:26:39] production.INFO: Old stock: 19.00  
[2026-06-07 12:26:39] production.INFO: Quantity deducted: 1  
[2026-06-07 12:26:39] production.INFO: New stock: 18  
[2026-06-07 12:26:39] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-06-07 12:26:39] production.INFO: Old stock: 47.00  
[2026-06-07 12:26:39] production.INFO: Quantity deducted: 1  
[2026-06-07 12:26:39] production.INFO: New stock: 46  
[2026-06-07 12:26:39] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-06-07 12:26:39] production.INFO: Old stock: 9.00  
[2026-06-07 12:26:39] production.INFO: Quantity deducted: 1  
[2026-06-07 12:26:39] production.INFO: New stock: 8  
[2026-06-07 12:26:39] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-07 12:26:39] production.INFO: Old stock: 64.00  
[2026-06-07 12:26:39] production.INFO: Quantity deducted: 1  
[2026-06-07 12:26:39] production.INFO: New stock: 63  
[2026-06-07 12:26:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780827999437"} 
[2026-06-07 12:37:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780828648763","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":2,"subtotal":10000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T12:38:21.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"102.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T07:20:48.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-07 12:37:28] production.INFO: Stock deduction for product: PregStream  
[2026-06-07 12:37:28] production.INFO: Old stock: 7.00  
[2026-06-07 12:37:28] production.INFO: Quantity deducted: 2  
[2026-06-07 12:37:28] production.INFO: New stock: 5  
[2026-06-07 12:37:28] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 12:37:28] production.INFO: Old stock: 102.00  
[2026-06-07 12:37:28] production.INFO: Quantity deducted: 1  
[2026-06-07 12:37:28] production.INFO: New stock: 101  
[2026-06-07 12:37:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780828648763"} 
[2026-06-07 13:04:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780830271673","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"68.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T09:40:01.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 13:04:31] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-07 13:04:31] production.INFO: Old stock: 68.00  
[2026-06-07 13:04:31] production.INFO: Quantity deducted: 1  
[2026-06-07 13:04:31] production.INFO: New stock: 67  
[2026-06-07 13:04:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780830271673"} 
[2026-06-07 13:06:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780830390840","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"43.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T06:36:58.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-07 13:06:31] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-07 13:06:31] production.INFO: Old stock: 43.00  
[2026-06-07 13:06:31] production.INFO: Quantity deducted: 1  
[2026-06-07 13:06:31] production.INFO: New stock: 42  
[2026-06-07 13:06:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780830390840"} 
[2026-06-07 13:31:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780831875019","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":62,"product_id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","sku":"0675","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":10,"subtotal":15000,"product":{"id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0675","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-03T13:04:02.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 13:31:17] production.INFO: Stock deduction for product: AMLODIPINE TABLET 10MG-ZAAR-10  
[2026-06-07 13:31:17] production.INFO: Old stock: 45.00  
[2026-06-07 13:31:17] production.INFO: Quantity deducted: 10  
[2026-06-07 13:31:17] production.INFO: New stock: 35  
[2026-06-07 13:31:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780831875019"} 
[2026-06-07 13:32:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780831960442","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":479,"product_id":479,"name":"KETAZOL (Ketoconazole Cream), 15g","sku":"3116","price":"3500.00","selling_price":"3500.00","purchase_price":"1300.00","quantity":1,"subtotal":3500,"product":{"id":479,"name":"KETAZOL (Ketoconazole Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"15","brand_id":"35","supplier_id":null,"purchase_price":"1300.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3116","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-07T09:33:42.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 13:32:42] production.INFO: Stock deduction for product: KETAZOL (Ketoconazole Cream), 15g  
[2026-06-07 13:32:42] production.INFO: Old stock: 5.00  
[2026-06-07 13:32:42] production.INFO: Quantity deducted: 1  
[2026-06-07 13:32:42] production.INFO: New stock: 4  
[2026-06-07 13:32:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780831960442"} 
[2026-06-07 13:38:15] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780832297024","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":885,"product_id":885,"name":"Triphen 4 flu","sku":"PRD-00885","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":885,"name":"Triphen 4 flu","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"11000.00","last_purchase_price":"11000.00","selling_price":"22000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00885","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:35:55.000000Z","updated_at":"2026-06-03T13:46:59.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":2,"subtotal":3000,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"38.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T08:49:23.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 13:38:15] production.INFO: Stock deduction for product: Triphen 4 flu  
[2026-06-07 13:38:15] production.INFO: Old stock: 2.00  
[2026-06-07 13:38:15] production.INFO: Quantity deducted: 1  
[2026-06-07 13:38:15] production.INFO: New stock: 1  
[2026-06-07 13:38:15] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-07 13:38:15] production.INFO: Old stock: 38.00  
[2026-06-07 13:38:15] production.INFO: Quantity deducted: 2  
[2026-06-07 13:38:15] production.INFO: New stock: 36  
[2026-06-07 13:38:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780832297024"} 
[2026-06-07 14:32:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780835531834","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":149,"product_id":149,"name":"Calcium, Magnasium, Vitamin D3, Zinc (Calcimin)","sku":"0717","price":"6500.00","selling_price":"6500.00","purchase_price":"3775.00","quantity":1,"subtotal":6500,"product":{"id":149,"name":"Calcium, Magnasium, Vitamin D3, Zinc (Calcimin)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"22","supplier_id":null,"purchase_price":"3775.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0717","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-24T02:30:34.000000Z","brand":{"id":22,"name":"Calcimin","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":468,"product_id":468,"name":"Iron Syrup(Chelferon)","sku":"3105","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":1,"subtotal":3000,"product":{"id":468,"name":"Iron Syrup(Chelferon)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3105","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-06T01:09:26.000000Z","brand":null,"category":null}},{"id":570,"product_id":570,"name":"MOXAFORTE SYRUP (Flucloxacillin/Amoxicillin 250mg/5ml)","sku":"3207","price":"13000.00","selling_price":"13000.00","purchase_price":"6400.00","quantity":1,"subtotal":13000,"product":{"id":570,"name":"MOXAFORTE SYRUP (Flucloxacillin/Amoxicillin 250mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"10","supplier_id":null,"purchase_price":"6400.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3207","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-06T01:12:14.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 14:32:11] production.INFO: Stock deduction for product: Calcium, Magnasium, Vitamin D3, Zinc (Calcimin)  
[2026-06-07 14:32:11] production.INFO: Old stock: 1.00  
[2026-06-07 14:32:11] production.INFO: Quantity deducted: 1  
[2026-06-07 14:32:11] production.INFO: New stock: 0  
[2026-06-07 14:32:11] production.INFO: Stock deduction for product: Iron Syrup(Chelferon)  
[2026-06-07 14:32:11] production.INFO: Old stock: 3.00  
[2026-06-07 14:32:11] production.INFO: Quantity deducted: 1  
[2026-06-07 14:32:11] production.INFO: New stock: 2  
[2026-06-07 14:32:11] production.INFO: Stock deduction for product: MOXAFORTE SYRUP (Flucloxacillin/Amoxicillin 250mg/5ml)  
[2026-06-07 14:32:11] production.INFO: Old stock: 5.00  
[2026-06-07 14:32:11] production.INFO: Quantity deducted: 1  
[2026-06-07 14:32:11] production.INFO: New stock: 4  
[2026-06-07 14:32:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780835531834"} 
[2026-06-07 15:11:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780837867327","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":754,"product_id":754,"name":"Vifex Syrup","sku":"3391","price":"10000.00","selling_price":"10000.00","purchase_price":"4850.00","quantity":1,"subtotal":10000,"product":{"id":754,"name":"Vifex Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4850.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3391","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:58:38.000000Z","brand":null,"category":null}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"140.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T17:08:13.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-07 15:11:07] production.INFO: Stock deduction for product: Vifex Syrup  
[2026-06-07 15:11:07] production.INFO: Old stock: 7.00  
[2026-06-07 15:11:07] production.INFO: Quantity deducted: 1  
[2026-06-07 15:11:07] production.INFO: New stock: 6  
[2026-06-07 15:11:07] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-07 15:11:07] production.INFO: Old stock: 140.00  
[2026-06-07 15:11:07] production.INFO: Quantity deducted: 1  
[2026-06-07 15:11:07] production.INFO: New stock: 139  
[2026-06-07 15:11:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780837867327"} 
[2026-06-07 16:04:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780841075552","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"27.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T10:15:11.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 16:04:35] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-07 16:04:35] production.INFO: Old stock: 27.00  
[2026-06-07 16:04:35] production.INFO: Quantity deducted: 1  
[2026-06-07 16:04:35] production.INFO: New stock: 26  
[2026-06-07 16:04:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780841075552"} 
[2026-06-07 16:22:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780842126459","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":204,"product_id":204,"name":"DACOLD SYRUP (For Children), 100ml","sku":"0765","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":204,"name":"DACOLD SYRUP (For Children), 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0765","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-06T17:18:38.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 16:22:07] production.INFO: Stock deduction for product: DACOLD SYRUP (For Children), 100ml  
[2026-06-07 16:22:07] production.INFO: Old stock: 8.00  
[2026-06-07 16:22:07] production.INFO: Quantity deducted: 1  
[2026-06-07 16:22:07] production.INFO: New stock: 7  
[2026-06-07 16:22:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780842126459"} 
[2026-06-07 16:35:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780842917408","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"8.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T10:10:56.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"standard_bank"}} 
[2026-06-07 16:35:19] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-07 16:35:19] production.INFO: Old stock: 8.00  
[2026-06-07 16:35:19] production.INFO: Quantity deducted: 1  
[2026-06-07 16:35:19] production.INFO: New stock: 7  
[2026-06-07 16:35:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780842917408"} 
[2026-06-07 16:40:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780843250007","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"36.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-01T15:35:09.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 16:40:51] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-07 16:40:51] production.INFO: Old stock: 36.00  
[2026-06-07 16:40:51] production.INFO: Quantity deducted: 1  
[2026-06-07 16:40:51] production.INFO: New stock: 35  
[2026-06-07 16:40:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780843250007"} 
[2026-06-07 16:45:54] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780843552989","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"31.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-06T10:58:50.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"41.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-06T15:18:28.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"67.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T11:04:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-07 16:45:54] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-07 16:45:54] production.INFO: Old stock: 31.00  
[2026-06-07 16:45:54] production.INFO: Quantity deducted: 1  
[2026-06-07 16:45:54] production.INFO: New stock: 30  
[2026-06-07 16:45:54] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-07 16:45:54] production.INFO: Old stock: 41.00  
[2026-06-07 16:45:54] production.INFO: Quantity deducted: 1  
[2026-06-07 16:45:54] production.INFO: New stock: 40  
[2026-06-07 16:45:54] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-07 16:45:54] production.INFO: Old stock: 67.00  
[2026-06-07 16:45:54] production.INFO: Quantity deducted: 1  
[2026-06-07 16:45:54] production.INFO: New stock: 66  
[2026-06-07 16:45:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780843552989"} 
[2026-06-07 17:03:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780844630209","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":677,"product_id":677,"name":"Salbutumol 4mg","sku":"3314","price":"1000.00","selling_price":"1000.00","purchase_price":"495.00","quantity":1,"subtotal":1000,"product":{"id":677,"name":"Salbutumol 4mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"38.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3314","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-23T09:22:32.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 17:03:51] production.INFO: Stock deduction for product: Salbutumol 4mg  
[2026-06-07 17:03:51] production.INFO: Old stock: 38.00  
[2026-06-07 17:03:51] production.INFO: Quantity deducted: 1  
[2026-06-07 17:03:51] production.INFO: New stock: 37  
[2026-06-07 17:03:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780844630209"} 
[2026-06-07 17:06:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780844795416","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"405.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T18:00:35.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-07 17:06:37] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-07 17:06:37] production.INFO: Old stock: 405.00  
[2026-06-07 17:06:37] production.INFO: Quantity deducted: 6  
[2026-06-07 17:06:37] production.INFO: New stock: 399  
[2026-06-07 17:06:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780844795416"} 
[2026-06-07 17:18:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780845486348","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"63.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-07T10:26:39.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-05T17:03:29.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-07 17:18:07] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-07 17:18:07] production.INFO: Old stock: 63.00  
[2026-06-07 17:18:07] production.INFO: Quantity deducted: 1  
[2026-06-07 17:18:07] production.INFO: New stock: 62  
[2026-06-07 17:18:07] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-07 17:18:07] production.INFO: Old stock: 20.00  
[2026-06-07 17:18:07] production.INFO: Quantity deducted: 1  
[2026-06-07 17:18:07] production.INFO: New stock: 19  
[2026-06-07 17:18:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780845486348"} 
[2026-06-07 17:40:35] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780846834254","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"6.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T10:02:27.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":539,"product_id":539,"name":"Malaria Test Kit (Antigen Test)","sku":"3176","price":"10000.00","selling_price":"10000.00","purchase_price":"5500.00","quantity":1,"subtotal":10000,"product":{"id":539,"name":"Malaria Test Kit (Antigen Test)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3176","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-30T05:21:09.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"5.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T10:37:28.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-07 17:40:35] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-07 17:40:35] production.INFO: Old stock: 6.00  
[2026-06-07 17:40:35] production.INFO: Quantity deducted: 1  
[2026-06-07 17:40:35] production.INFO: New stock: 5  
[2026-06-07 17:40:35] production.INFO: Stock deduction for product: Malaria Test Kit (Antigen Test)  
[2026-06-07 17:40:35] production.INFO: Old stock: 3.00  
[2026-06-07 17:40:35] production.INFO: Quantity deducted: 1  
[2026-06-07 17:40:35] production.INFO: New stock: 2  
[2026-06-07 17:40:35] production.INFO: Stock deduction for product: PregStream  
[2026-06-07 17:40:35] production.INFO: Old stock: 5.00  
[2026-06-07 17:40:35] production.INFO: Quantity deducted: 1  
[2026-06-07 17:40:35] production.INFO: New stock: 4  
[2026-06-07 17:40:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780846834254"} 
[2026-06-07 17:44:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780847073998","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":2,"subtotal":4000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"76.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-04T10:25:50.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 17:44:35] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-07 17:44:35] production.INFO: Old stock: 76.00  
[2026-06-07 17:44:35] production.INFO: Quantity deducted: 2  
[2026-06-07 17:44:35] production.INFO: New stock: 74  
[2026-06-07 17:44:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780847073998"} 
[2026-06-07 17:54:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780847688275","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"101.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T10:37:28.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"182.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T15:23:34.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 17:54:50] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 17:54:50] production.INFO: Old stock: 101.00  
[2026-06-07 17:54:50] production.INFO: Quantity deducted: 2  
[2026-06-07 17:54:50] production.INFO: New stock: 99  
[2026-06-07 17:54:50] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-07 17:54:50] production.INFO: Old stock: 182.00  
[2026-06-07 17:54:50] production.INFO: Quantity deducted: 2  
[2026-06-07 17:54:50] production.INFO: New stock: 180  
[2026-06-07 17:54:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780847688275"} 
[2026-06-07 18:11:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780848712162","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"101.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T10:37:28.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":5,"subtotal":1500,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"399.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T15:06:37.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 18:11:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 18:11:54] production.INFO: Old stock: 99.00  
[2026-06-07 18:11:54] production.INFO: Quantity deducted: 1  
[2026-06-07 18:11:54] production.INFO: New stock: 98  
[2026-06-07 18:11:54] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-07 18:11:54] production.INFO: Old stock: 399.00  
[2026-06-07 18:11:54] production.INFO: Quantity deducted: 5  
[2026-06-07 18:11:54] production.INFO: New stock: 394  
[2026-06-07 18:11:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780848712162"} 
[2026-06-07 18:12:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780848759253","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"98.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T16:11:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 18:12:40] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 18:12:40] production.INFO: Old stock: 98.00  
[2026-06-07 18:12:40] production.INFO: Quantity deducted: 1  
[2026-06-07 18:12:40] production.INFO: New stock: 97  
[2026-06-07 18:12:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780848759253"} 
[2026-06-07 18:33:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780850031203","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":4,"subtotal":4000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"190.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T15:42:03.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-07 18:33:53] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-07 18:33:53] production.INFO: Old stock: 190.00  
[2026-06-07 18:33:53] production.INFO: Quantity deducted: 4  
[2026-06-07 18:33:53] production.INFO: New stock: 186  
[2026-06-07 18:33:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780850031203"} 
[2026-06-07 18:37:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780850228901","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"97.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T16:12:40.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"394.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T16:11:54.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"427.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-06T17:51:21.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 18:37:10] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 18:37:10] production.INFO: Old stock: 97.00  
[2026-06-07 18:37:10] production.INFO: Quantity deducted: 1  
[2026-06-07 18:37:10] production.INFO: New stock: 96  
[2026-06-07 18:37:10] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-07 18:37:10] production.INFO: Old stock: 394.00  
[2026-06-07 18:37:10] production.INFO: Quantity deducted: 1  
[2026-06-07 18:37:10] production.INFO: New stock: 393  
[2026-06-07 18:37:10] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-07 18:37:10] production.INFO: Old stock: 427.00  
[2026-06-07 18:37:10] production.INFO: Quantity deducted: 1  
[2026-06-07 18:37:10] production.INFO: New stock: 426  
[2026-06-07 18:37:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780850228901"} 
[2026-06-07 19:38:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780853928487","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"31.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T15:38:09.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 19:38:50] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-06-07 19:38:50] production.INFO: Old stock: 31.00  
[2026-06-07 19:38:50] production.INFO: Quantity deducted: 1  
[2026-06-07 19:38:50] production.INFO: New stock: 30  
[2026-06-07 19:38:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780853928487"} 
[2026-06-07 19:43:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780854200565","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"38.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T09:28:49.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 19:43:21] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-07 19:43:21] production.INFO: Old stock: 38.00  
[2026-06-07 19:43:21] production.INFO: Quantity deducted: 1  
[2026-06-07 19:43:21] production.INFO: New stock: 37  
[2026-06-07 19:43:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780854200565"} 
[2026-06-07 20:11:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780855892983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":430,"product_id":430,"name":"Grand pa","sku":"3067","price":"1000.00","selling_price":"1000.00","purchase_price":"526.00","quantity":1,"subtotal":1000,"product":{"id":430,"name":"Grand pa","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"526.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3067","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-20T08:57:35.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"45.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-05T08:49:23.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 20:11:34] production.INFO: Stock deduction for product: Grand pa  
[2026-06-07 20:11:34] production.INFO: Old stock: 15.00  
[2026-06-07 20:11:34] production.INFO: Quantity deducted: 1  
[2026-06-07 20:11:34] production.INFO: New stock: 14  
[2026-06-07 20:11:34] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-07 20:11:34] production.INFO: Old stock: 45.00  
[2026-06-07 20:11:34] production.INFO: Quantity deducted: 1  
[2026-06-07 20:11:34] production.INFO: New stock: 44  
[2026-06-07 20:11:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780855892983"} 
[2026-06-07 20:35:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780857314849","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"426.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-07T16:37:10.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 20:35:15] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-07 20:35:15] production.INFO: Old stock: 426.00  
[2026-06-07 20:35:15] production.INFO: Quantity deducted: 1  
[2026-06-07 20:35:15] production.INFO: New stock: 425  
[2026-06-07 20:35:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780857314849"} 
[2026-06-07 20:38:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780857483409","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":689,"product_id":689,"name":"Shaver","sku":"3326","price":"1000.00","selling_price":"1000.00","purchase_price":"416.00","quantity":1,"subtotal":1000,"product":{"id":689,"name":"Shaver","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"416.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3326","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T18:46:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 20:38:05] production.INFO: Stock deduction for product: Shaver  
[2026-06-07 20:38:05] production.INFO: Old stock: 6.00  
[2026-06-07 20:38:05] production.INFO: Quantity deducted: 1  
[2026-06-07 20:38:05] production.INFO: New stock: 5  
[2026-06-07 20:38:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780857483409"} 
[2026-06-07 20:39:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780857596312","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"66.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T14:45:54.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 20:39:58] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-07 20:39:58] production.INFO: Old stock: 66.00  
[2026-06-07 20:39:58] production.INFO: Quantity deducted: 1  
[2026-06-07 20:39:58] production.INFO: New stock: 65  
[2026-06-07 20:39:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780857596312"} 
[2026-06-07 20:45:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780857958094","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"96.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T16:37:10.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-07 20:45:58] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-07 20:45:58] production.INFO: Old stock: 96.00  
[2026-06-07 20:45:58] production.INFO: Quantity deducted: 1  
[2026-06-07 20:45:58] production.INFO: New stock: 95  
[2026-06-07 20:45:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780857958094"} 
[2026-06-08 09:05:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780902311640","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"393.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T16:37:10.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 09:05:12] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-08 09:05:12] production.INFO: Old stock: 393.00  
[2026-06-08 09:05:12] production.INFO: Quantity deducted: 3  
[2026-06-08 09:05:12] production.INFO: New stock: 390  
[2026-06-08 09:05:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780902311640"} 
[2026-06-08 09:07:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780902458600","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":8,"subtotal":48000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"56.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T10:25:50.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 09:07:39] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-08 09:07:39] production.INFO: Old stock: 56.00  
[2026-06-08 09:07:39] production.INFO: Quantity deducted: 8  
[2026-06-08 09:07:39] production.INFO: New stock: 48  
[2026-06-08 09:07:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780902458600"} 
[2026-06-08 09:08:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780902517072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":5,"subtotal":10000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"74.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-07T15:44:35.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 09:08:37] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-08 09:08:37] production.INFO: Old stock: 74.00  
[2026-06-08 09:08:37] production.INFO: Quantity deducted: 5  
[2026-06-08 09:08:37] production.INFO: New stock: 69  
[2026-06-08 09:08:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780902517072"} 
[2026-06-08 09:09:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780902573624","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":735,"product_id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","sku":"3372","price":"17000.00","selling_price":"17000.00","purchase_price":"8000.00","quantity":1,"subtotal":17000,"product":{"id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"6","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"17000.00","current_stock":"4.01","stock":"5.01","product_type":"Single","tax":null,"sku":"3372","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:22:07.000000Z","brand":{"id":6,"name":"100ML","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 09:09:33] production.INFO: Stock deduction for product: TRIPHEN PAEDIATRIC, 100ml  
[2026-06-08 09:09:33] production.INFO: Old stock: 4.01  
[2026-06-08 09:09:33] production.INFO: Quantity deducted: 1  
[2026-06-08 09:09:33] production.INFO: New stock: 3.01  
[2026-06-08 09:09:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780902573624"} 
[2026-06-08 09:50:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780905012036","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"15.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-06T17:36:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 09:50:13] production.INFO: Stock deduction for product: Iduplus  
[2026-06-08 09:50:13] production.INFO: Old stock: 15.00  
[2026-06-08 09:50:13] production.INFO: Quantity deducted: 1  
[2026-06-08 09:50:13] production.INFO: New stock: 14  
[2026-06-08 09:50:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780905012036"} 
[2026-06-08 10:26:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780907179144","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"36.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T10:55:28.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"65.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T18:39:58.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 10:26:19] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-08 10:26:19] production.INFO: Old stock: 36.00  
[2026-06-08 10:26:19] production.INFO: Quantity deducted: 1  
[2026-06-08 10:26:19] production.INFO: New stock: 35  
[2026-06-08 10:26:19] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-08 10:26:19] production.INFO: Old stock: 65.00  
[2026-06-08 10:26:19] production.INFO: Quantity deducted: 1  
[2026-06-08 10:26:19] production.INFO: New stock: 64  
[2026-06-08 10:26:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780907179144"} 
[2026-06-08 11:34:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780911284911","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"37.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T17:43:21.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 11:34:46] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-08 11:34:46] production.INFO: Old stock: 37.00  
[2026-06-08 11:34:46] production.INFO: Quantity deducted: 2  
[2026-06-08 11:34:46] production.INFO: New stock: 35  
[2026-06-08 11:34:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780911284911"} 
[2026-06-08 12:00:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780912853346","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":777,"product_id":777,"name":"ZINNIA P (Hormonal Contraceptive)","sku":"3414","price":"4500.00","selling_price":"4500.00","purchase_price":"2500.00","quantity":2,"subtotal":9000,"product":{"id":777,"name":"ZINNIA P (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"28","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3414","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T12:31:10.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"35.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-07T14:40:51.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-08 12:00:54] production.INFO: Stock deduction for product: ZINNIA P (Hormonal Contraceptive)  
[2026-06-08 12:00:54] production.INFO: Old stock: 2.00  
[2026-06-08 12:00:54] production.INFO: Quantity deducted: 2  
[2026-06-08 12:00:54] production.INFO: New stock: 0  
[2026-06-08 12:00:54] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-08 12:00:54] production.INFO: Old stock: 35.00  
[2026-06-08 12:00:54] production.INFO: Quantity deducted: 1  
[2026-06-08 12:00:54] production.INFO: New stock: 34  
[2026-06-08 12:00:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780912853346"} 
[2026-06-08 12:03:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780913031754","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":62,"product_id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","sku":"0675","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"35.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0675","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-07T11:31:17.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 12:03:54] production.INFO: Stock deduction for product: AMLODIPINE TABLET 10MG-ZAAR-10  
[2026-06-08 12:03:54] production.INFO: Old stock: 35.00  
[2026-06-08 12:03:54] production.INFO: Quantity deducted: 1  
[2026-06-08 12:03:54] production.INFO: New stock: 34  
[2026-06-08 12:03:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780913031754"} 
[2026-06-08 12:17:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780913875452","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"14.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-08T07:50:13.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 12:17:56] production.INFO: Stock deduction for product: Iduplus  
[2026-06-08 12:17:56] production.INFO: Old stock: 14.00  
[2026-06-08 12:17:56] production.INFO: Quantity deducted: 1  
[2026-06-08 12:17:56] production.INFO: New stock: 13  
[2026-06-08 12:17:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780913875452"} 
[2026-06-08 12:28:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780914504117","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"95.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T18:45:58.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 12:28:24] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-08 12:28:24] production.INFO: Old stock: 95.00  
[2026-06-08 12:28:24] production.INFO: Quantity deducted: 1  
[2026-06-08 12:28:24] production.INFO: New stock: 94  
[2026-06-08 12:28:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780914504117"} 
[2026-06-08 13:06:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780916801915","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"94.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T10:28:24.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 13:06:43] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-08 13:06:43] production.INFO: Old stock: 94.00  
[2026-06-08 13:06:43] production.INFO: Quantity deducted: 1  
[2026-06-08 13:06:43] production.INFO: New stock: 93  
[2026-06-08 13:06:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780916801915"} 
[2026-06-08 14:33:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780922013062","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"6.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 14:33:35] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-08 14:33:35] production.INFO: Old stock: 6.00  
[2026-06-08 14:33:35] production.INFO: Quantity deducted: 1  
[2026-06-08 14:33:35] production.INFO: New stock: 5  
[2026-06-08 14:33:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780922013062"} 
[2026-06-08 14:58:53] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780923532656","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"93.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T11:06:43.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":611,"product_id":611,"name":"OPRA TABLET (Loperamide 2mg)","sku":"3248","price":"1500.00","selling_price":"1500.00","purchase_price":"700.00","quantity":1,"subtotal":1500,"product":{"id":611,"name":"OPRA TABLET (Loperamide 2mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"19.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3248","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T16:26:18.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"standard_bank"}} 
[2026-06-08 14:58:53] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-08 14:58:53] production.INFO: Old stock: 93.00  
[2026-06-08 14:58:53] production.INFO: Quantity deducted: 1  
[2026-06-08 14:58:53] production.INFO: New stock: 92  
[2026-06-08 14:58:53] production.INFO: Stock deduction for product: OPRA TABLET (Loperamide 2mg)  
[2026-06-08 14:58:53] production.INFO: Old stock: 19.00  
[2026-06-08 14:58:53] production.INFO: Quantity deducted: 1  
[2026-06-08 14:58:53] production.INFO: New stock: 18  
[2026-06-08 14:58:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780923532656"} 
[2026-06-08 15:41:02] production.INFO: Stock Adjustment - Initial State {"product_id":"680","previous_quantity":"9.00","previous_selling_price":"50000.00","validated_data":{"product_id":"680","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-08"}} 
[2026-06-08 15:41:02] production.INFO: Stock Adjustment - After Quantity Save {"product_id":680,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-06-08 15:42:35] production.INFO: Stock Adjustment - Initial State {"product_id":"420","previous_quantity":"0.00","previous_selling_price":"3500.00","validated_data":{"product_id":"420","adjustment_type":"add","quantity":"25","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-08"}} 
[2026-06-08 15:42:35] production.INFO: Stock Adjustment - After Quantity Save {"product_id":420,"new_quantity":25.0,"current_stock":25.0,"changes_made":"Quantity adjusted"} 
[2026-06-08 15:46:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780926411518","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"12.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-06T10:23:53.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 15:46:52] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-08 15:46:52] production.INFO: Old stock: 12.00  
[2026-06-08 15:46:52] production.INFO: Quantity deducted: 1  
[2026-06-08 15:46:52] production.INFO: New stock: 11  
[2026-06-08 15:46:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780926411518"} 
[2026-06-08 16:17:23] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780928242385","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"40.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-07T14:45:54.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"64.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T08:26:19.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 16:17:23] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-08 16:17:23] production.INFO: Old stock: 40.00  
[2026-06-08 16:17:23] production.INFO: Quantity deducted: 1  
[2026-06-08 16:17:23] production.INFO: New stock: 39  
[2026-06-08 16:17:23] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-08 16:17:23] production.INFO: Old stock: 64.00  
[2026-06-08 16:17:23] production.INFO: Quantity deducted: 1  
[2026-06-08 16:17:23] production.INFO: New stock: 63  
[2026-06-08 16:17:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780928242385"} 
[2026-06-08 16:21:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780928501409","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":257,"product_id":257,"name":"DOLSARA (Diclofenac & Paracetamol Tablets)","sku":"0786","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":1,"subtotal":1500,"product":{"id":257,"name":"DOLSARA (Diclofenac & Paracetamol Tablets)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0786","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-03-06T00:50:59.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 16:21:42] production.INFO: Stock deduction for product: DOLSARA (Diclofenac & Paracetamol Tablets)  
[2026-06-08 16:21:42] production.INFO: Old stock: 10.00  
[2026-06-08 16:21:42] production.INFO: Quantity deducted: 1  
[2026-06-08 16:21:42] production.INFO: New stock: 9  
[2026-06-08 16:21:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780928501409"} 
[2026-06-08 16:37:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780929423099","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"92.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T12:58:53.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":5,"subtotal":5000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"180.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T15:54:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":763,"product_id":763,"name":"Water Plaster","sku":"3400","price":"200.00","selling_price":"200.00","purchase_price":"36.00","quantity":1,"subtotal":200,"product":{"id":763,"name":"Water Plaster","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"36.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"419.00","stock":"419.00","product_type":"Single","tax":null,"sku":"3400","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T10:02:44.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 16:37:03] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-08 16:37:03] production.INFO: Old stock: 92.00  
[2026-06-08 16:37:03] production.INFO: Quantity deducted: 1  
[2026-06-08 16:37:03] production.INFO: New stock: 91  
[2026-06-08 16:37:04] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-08 16:37:04] production.INFO: Old stock: 180.00  
[2026-06-08 16:37:04] production.INFO: Quantity deducted: 5  
[2026-06-08 16:37:04] production.INFO: New stock: 175  
[2026-06-08 16:37:04] production.INFO: Stock deduction for product: Water Plaster  
[2026-06-08 16:37:04] production.INFO: Old stock: 419.00  
[2026-06-08 16:37:04] production.INFO: Quantity deducted: 1  
[2026-06-08 16:37:04] production.INFO: New stock: 418  
[2026-06-08 16:37:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780929423099"} 
[2026-06-08 16:37:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780929476667","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":2,"subtotal":3000,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T14:04:35.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-08 16:37:57] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-08 16:37:57] production.INFO: Old stock: 26.00  
[2026-06-08 16:37:57] production.INFO: Quantity deducted: 2  
[2026-06-08 16:37:57] production.INFO: New stock: 24  
[2026-06-08 16:37:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780929476667"} 
[2026-06-08 16:55:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780930533317","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":53,"product_id":53,"name":"ALWO (Albendazole Susp.), 20ml","sku":"0665","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":53,"name":"ALWO (Albendazole Susp.), 20ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"13","brand_id":"12","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"3.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0665","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-07T06:49:01.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":797,"product_id":797,"name":"Congestly Syrup","sku":"1303","price":"8000.00","selling_price":"8000.00","purchase_price":"3750.00","quantity":1,"subtotal":8000,"product":{"id":797,"name":"Congestly Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3750.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1303","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-20T07:28:28.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-08 16:55:34] production.INFO: Stock deduction for product: ALWO (Albendazole Susp.), 20ml  
[2026-06-08 16:55:34] production.INFO: Old stock: 3.00  
[2026-06-08 16:55:34] production.INFO: Quantity deducted: 1  
[2026-06-08 16:55:34] production.INFO: New stock: 2  
[2026-06-08 16:55:34] production.INFO: Stock deduction for product: Congestly Syrup  
[2026-06-08 16:55:34] production.INFO: Old stock: 1.00  
[2026-06-08 16:55:34] production.INFO: Quantity deducted: 1  
[2026-06-08 16:55:34] production.INFO: New stock: 0  
[2026-06-08 16:55:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780930533317"} 
[2026-06-08 17:02:41] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780930959782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"91.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T14:37:03.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":260,"product_id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"700.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"37.00","stock":"43.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-06T17:00:49.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"62.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-07T15:18:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 17:02:41] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-08 17:02:41] production.INFO: Old stock: 91.00  
[2026-06-08 17:02:41] production.INFO: Quantity deducted: 2  
[2026-06-08 17:02:41] production.INFO: New stock: 89  
[2026-06-08 17:02:41] production.INFO: Stock deduction for product: DOXY CAPSULES (Doxycycline 100mg)  
[2026-06-08 17:02:41] production.INFO: Old stock: 37.00  
[2026-06-08 17:02:41] production.INFO: Quantity deducted: 1  
[2026-06-08 17:02:41] production.INFO: New stock: 36  
[2026-06-08 17:02:41] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-08 17:02:41] production.INFO: Old stock: 62.00  
[2026-06-08 17:02:41] production.INFO: Quantity deducted: 1  
[2026-06-08 17:02:41] production.INFO: New stock: 61  
[2026-06-08 17:02:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780930959782"} 
[2026-06-08 17:07:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780931245182","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":803,"product_id":803,"name":"Cotton Tips (Soft Touch)","sku":"1254","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":803,"name":"Cotton Tips (Soft Touch)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1254","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-28T08:03:32.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 17:07:25] production.INFO: Stock deduction for product: Cotton Tips (Soft Touch)  
[2026-06-08 17:07:25] production.INFO: Old stock: 5.00  
[2026-06-08 17:07:25] production.INFO: Quantity deducted: 1  
[2026-06-08 17:07:25] production.INFO: New stock: 4  
[2026-06-08 17:07:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780931245182"} 
[2026-06-08 17:17:30] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780931848911","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"36.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-07T11:38:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"425.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-07T18:35:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"390.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T07:05:12.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 17:17:30] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-08 17:17:30] production.INFO: Old stock: 36.00  
[2026-06-08 17:17:30] production.INFO: Quantity deducted: 1  
[2026-06-08 17:17:30] production.INFO: New stock: 35  
[2026-06-08 17:17:30] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-08 17:17:30] production.INFO: Old stock: 425.00  
[2026-06-08 17:17:30] production.INFO: Quantity deducted: 1  
[2026-06-08 17:17:30] production.INFO: New stock: 424  
[2026-06-08 17:17:30] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-08 17:17:30] production.INFO: Old stock: 390.00  
[2026-06-08 17:17:30] production.INFO: Quantity deducted: 1  
[2026-06-08 17:17:30] production.INFO: New stock: 389  
[2026-06-08 17:17:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780931848911"} 
[2026-06-08 17:30:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780932652273","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"96.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-06T08:34:36.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 17:30:53] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-08 17:30:53] production.INFO: Old stock: 96.00  
[2026-06-08 17:30:53] production.INFO: Quantity deducted: 1  
[2026-06-08 17:30:53] production.INFO: New stock: 95  
[2026-06-08 17:30:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780932652273"} 
[2026-06-08 17:44:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780933480050","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"35.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-08T08:26:19.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 17:44:41] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-08 17:44:41] production.INFO: Old stock: 35.00  
[2026-06-08 17:44:41] production.INFO: Quantity deducted: 1  
[2026-06-08 17:44:41] production.INFO: New stock: 34  
[2026-06-08 17:44:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780933480050"} 
[2026-06-08 18:15:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780935340885","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":4,"subtotal":4000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"63.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-07T06:49:01.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-08 18:15:41] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-08 18:15:41] production.INFO: Old stock: 63.00  
[2026-06-08 18:15:41] production.INFO: Quantity deducted: 4  
[2026-06-08 18:15:41] production.INFO: New stock: 59  
[2026-06-08 18:15:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780935340885"} 
[2026-06-08 18:35:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780936515223","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T15:40:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 18:35:16] production.INFO: Stock deduction for product: PregStream  
[2026-06-08 18:35:16] production.INFO: Old stock: 4.00  
[2026-06-08 18:35:16] production.INFO: Quantity deducted: 1  
[2026-06-08 18:35:16] production.INFO: New stock: 3  
[2026-06-08 18:35:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780936515223"} 
[2026-06-08 18:41:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780936880392","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"75.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-04T09:00:17.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"389.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T15:17:30.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 18:41:21] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-08 18:41:21] production.INFO: Old stock: 75.00  
[2026-06-08 18:41:21] production.INFO: Quantity deducted: 1  
[2026-06-08 18:41:21] production.INFO: New stock: 74  
[2026-06-08 18:41:21] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-08 18:41:21] production.INFO: Old stock: 389.00  
[2026-06-08 18:41:21] production.INFO: Quantity deducted: 1  
[2026-06-08 18:41:21] production.INFO: New stock: 388  
[2026-06-08 18:41:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780936880392"} 
[2026-06-08 18:43:20] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780936999192","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"75.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-08T16:42:05.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"389.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T16:42:05.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 18:43:20] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-08 18:43:20] production.INFO: Old stock: 75.00  
[2026-06-08 18:43:20] production.INFO: Quantity deducted: 1  
[2026-06-08 18:43:20] production.INFO: New stock: 74  
[2026-06-08 18:43:20] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-08 18:43:20] production.INFO: Old stock: 389.00  
[2026-06-08 18:43:20] production.INFO: Quantity deducted: 1  
[2026-06-08 18:43:20] production.INFO: New stock: 388  
[2026-06-08 18:43:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780936999192"} 
[2026-06-08 18:54:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780937648545","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"39.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-08T14:17:23.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 18:54:09] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-08 18:54:09] production.INFO: Old stock: 39.00  
[2026-06-08 18:54:09] production.INFO: Quantity deducted: 1  
[2026-06-08 18:54:09] production.INFO: New stock: 38  
[2026-06-08 18:54:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780937648545"} 
[2026-06-08 19:17:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780939053388","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":4,"subtotal":10000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-07T15:18:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":8,"subtotal":4000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"259.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T07:59:32.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-08 19:17:33] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-08 19:17:33] production.INFO: Old stock: 19.00  
[2026-06-08 19:17:33] production.INFO: Quantity deducted: 4  
[2026-06-08 19:17:33] production.INFO: New stock: 15  
[2026-06-08 19:17:33] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-08 19:17:33] production.INFO: Old stock: 259.00  
[2026-06-08 19:17:33] production.INFO: Quantity deducted: 8  
[2026-06-08 19:17:33] production.INFO: New stock: 251  
[2026-06-08 19:17:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780939053388"} 
[2026-06-08 19:26:30] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1780939588957","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"34.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-08T15:44:41.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"63.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T14:17:23.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-08 19:26:30] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-08 19:26:30] production.INFO: Old stock: 34.00  
[2026-06-08 19:26:30] production.INFO: Quantity deducted: 1  
[2026-06-08 19:26:30] production.INFO: New stock: 33  
[2026-06-08 19:26:30] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-08 19:26:30] production.INFO: Old stock: 63.00  
[2026-06-08 19:26:30] production.INFO: Quantity deducted: 1  
[2026-06-08 19:26:30] production.INFO: New stock: 62  
[2026-06-08 19:26:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780939588957"} 
[2026-06-08 19:59:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780941541872","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":826,"product_id":826,"name":"Pregalin (Pergalin) 75","sku":"PRD-00826","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":826,"name":"Pregalin (Pergalin) 75","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"1.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00826","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":"2026-04-03","created_at":"2026-04-03T10:29:44.000000Z","updated_at":"2026-06-02T18:47:16.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-08 19:59:03] production.INFO: Stock deduction for product: Pregalin (Pergalin) 75  
[2026-06-08 19:59:03] production.INFO: Old stock: 1.00  
[2026-06-08 19:59:03] production.INFO: Quantity deducted: 1  
[2026-06-08 19:59:03] production.INFO: New stock: 0  
[2026-06-08 19:59:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780941541872"} 
[2026-06-08 21:08:27] production.ERROR: SQLSTATE[HY000]: General error: 1021 Disk got full writing '.(temporary)' (Errcode: 28 "No space left on device") (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `sales` where exists (select * from `registers` where `sales`.`register_id` = `registers`.`id` and `user_id` = 6) and `created_at` >= 2026-06-08 00:00:00 and `created_at` <= 2026-06-08 23:59:59 order by `created_at` desc limit 15 offset 0) {"userId":6,"exception":"[object] (Illuminate\\Database\\QueryException(code: HY000): SQLSTATE[HY000]: General error: 1021 Disk got full writing '.(temporary)' (Errcode: 28 \"No space left on device\") (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `sales` where exists (select * from `registers` where `sales`.`register_id` = `registers`.`id` and `user_id` = 6) and `created_at` >= 2026-06-08 00:00:00 and `created_at` <= 2026-06-08 23:59:59 order by `created_at` desc limit 15 offset 0) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1125): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/app/Http/Controllers/SaleController.php(85): Illuminate\\Database\\Eloquent\\Builder->paginate()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\SaleController->index()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#60 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#61 {main}

[previous exception] [object] (PDOException(code: HY000): SQLSTATE[HY000]: General error: 1021 Disk got full writing '.(temporary)' (Errcode: 28 \"No space left on device\") at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:425)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(425): PDOStatement->execute()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1125): Illuminate\\Database\\Eloquent\\Builder->get()
#11 /home/findartmw/public_html/educ/app/Http/Controllers/SaleController.php(85): Illuminate\\Database\\Eloquent\\Builder->paginate()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\SaleController->index()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#62 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#63 {main}
"} 
[2026-06-09 07:41:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780983673961","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"44.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-07T18:11:34.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 07:41:16] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-09 07:41:16] production.INFO: Old stock: 44.00  
[2026-06-09 07:41:16] production.INFO: Quantity deducted: 1  
[2026-06-09 07:41:16] production.INFO: New stock: 43  
[2026-06-09 07:41:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780983673961"} 
[2026-06-09 07:50:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780984220208","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"89.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T15:02:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 07:50:22] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-09 07:50:22] production.INFO: Old stock: 89.00  
[2026-06-09 07:50:22] production.INFO: Quantity deducted: 2  
[2026-06-09 07:50:22] production.INFO: New stock: 87  
[2026-06-09 07:50:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780984220208"} 
[2026-06-09 09:04:27] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1780988666041","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"16.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-02T18:10:56.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T09:41:54.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"38.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-08T16:54:09.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"42.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T11:06:31.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"53.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T13:37:03.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 09:04:27] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-06-09 09:04:27] production.INFO: Old stock: 16.00  
[2026-06-09 09:04:27] production.INFO: Quantity deducted: 1  
[2026-06-09 09:04:27] production.INFO: New stock: 15  
[2026-06-09 09:04:27] production.INFO: Stock deduction for product: Water for Injection  
[2026-06-09 09:04:27] production.INFO: Old stock: 22.00  
[2026-06-09 09:04:27] production.INFO: Quantity deducted: 1  
[2026-06-09 09:04:27] production.INFO: New stock: 21  
[2026-06-09 09:04:28] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-09 09:04:28] production.INFO: Old stock: 38.00  
[2026-06-09 09:04:28] production.INFO: Quantity deducted: 1  
[2026-06-09 09:04:28] production.INFO: New stock: 37  
[2026-06-09 09:04:28] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-09 09:04:28] production.INFO: Old stock: 42.00  
[2026-06-09 09:04:28] production.INFO: Quantity deducted: 1  
[2026-06-09 09:04:28] production.INFO: New stock: 41  
[2026-06-09 09:04:28] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-09 09:04:28] production.INFO: Old stock: 53.00  
[2026-06-09 09:04:28] production.INFO: Quantity deducted: 1  
[2026-06-09 09:04:28] production.INFO: New stock: 52  
[2026-06-09 09:04:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780988666041"} 
[2026-06-09 09:05:01] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780988700536","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"87.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T05:50:22.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"33.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-08T17:26:30.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"35.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T08:43:05.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 09:05:01] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-09 09:05:01] production.INFO: Old stock: 87.00  
[2026-06-09 09:05:01] production.INFO: Quantity deducted: 1  
[2026-06-09 09:05:01] production.INFO: New stock: 86  
[2026-06-09 09:05:01] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-09 09:05:01] production.INFO: Old stock: 33.00  
[2026-06-09 09:05:01] production.INFO: Quantity deducted: 1  
[2026-06-09 09:05:01] production.INFO: New stock: 32  
[2026-06-09 09:05:01] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-09 09:05:01] production.INFO: Old stock: 35.00  
[2026-06-09 09:05:01] production.INFO: Quantity deducted: 1  
[2026-06-09 09:05:01] production.INFO: New stock: 34  
[2026-06-09 09:05:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780988700536"} 
[2026-06-09 09:11:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1780989068120","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"35.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-08T15:17:30.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"424.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-08T15:17:30.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"388.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T16:43:20.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 09:11:08] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-09 09:11:08] production.INFO: Old stock: 35.00  
[2026-06-09 09:11:08] production.INFO: Quantity deducted: 1  
[2026-06-09 09:11:08] production.INFO: New stock: 34  
[2026-06-09 09:11:08] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-09 09:11:08] production.INFO: Old stock: 424.00  
[2026-06-09 09:11:08] production.INFO: Quantity deducted: 1  
[2026-06-09 09:11:08] production.INFO: New stock: 423  
[2026-06-09 09:11:08] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-09 09:11:08] production.INFO: Old stock: 388.00  
[2026-06-09 09:11:08] production.INFO: Quantity deducted: 2  
[2026-06-09 09:11:08] production.INFO: New stock: 386  
[2026-06-09 09:11:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780989068120"} 
[2026-06-09 09:21:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780989664175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":420,"product_id":420,"name":"GLUCOSE TEST","sku":"3057","price":"3500.00","selling_price":"3500.00","purchase_price":"1160.00","quantity":1,"subtotal":3500,"product":{"id":420,"name":"GLUCOSE TEST","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1160.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"3057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-08T13:42:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 09:21:04] production.INFO: Stock deduction for product: GLUCOSE TEST  
[2026-06-09 09:21:04] production.INFO: Old stock: 25.00  
[2026-06-09 09:21:04] production.INFO: Quantity deducted: 1  
[2026-06-09 09:21:04] production.INFO: New stock: 24  
[2026-06-09 09:21:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780989664175"} 
[2026-06-09 09:32:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780990349238","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":6,"subtotal":12000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"13.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-08T10:17:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 09:32:30] production.INFO: Stock deduction for product: Iduplus  
[2026-06-09 09:32:30] production.INFO: Old stock: 13.00  
[2026-06-09 09:32:30] production.INFO: Quantity deducted: 6  
[2026-06-09 09:32:30] production.INFO: New stock: 7  
[2026-06-09 09:32:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780990349238"} 
[2026-06-09 10:11:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780992708673","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"7.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-09T07:32:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 10:11:50] production.INFO: Stock deduction for product: Iduplus  
[2026-06-09 10:11:50] production.INFO: Old stock: 7.00  
[2026-06-09 10:11:50] production.INFO: Quantity deducted: 1  
[2026-06-09 10:11:50] production.INFO: New stock: 6  
[2026-06-09 10:11:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780992708673"} 
[2026-06-09 10:12:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780992719233","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-02T17:01:43.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 10:12:01] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-09 10:12:01] production.INFO: Old stock: 22.00  
[2026-06-09 10:12:01] production.INFO: Quantity deducted: 1  
[2026-06-09 10:12:01] production.INFO: New stock: 21  
[2026-06-09 10:12:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780992719233"} 
[2026-06-09 10:12:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780992727506","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"5.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-07T15:40:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 10:12:09] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-09 10:12:09] production.INFO: Old stock: 5.00  
[2026-06-09 10:12:09] production.INFO: Quantity deducted: 1  
[2026-06-09 10:12:09] production.INFO: New stock: 4  
[2026-06-09 10:12:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780992727506"} 
[2026-06-09 10:12:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780992735249","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"86.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T07:05:01.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 10:12:16] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-09 10:12:16] production.INFO: Old stock: 86.00  
[2026-06-09 10:12:16] production.INFO: Quantity deducted: 1  
[2026-06-09 10:12:16] production.INFO: New stock: 85  
[2026-06-09 10:12:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780992735249"} 
[2026-06-09 10:14:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780992847370","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":904,"product_id":904,"name":"Antagit  200 ml","sku":"PRD-00904","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":904,"name":"Antagit  200 ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"11000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00904","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-04","created_at":"2026-06-04T12:34:24.000000Z","updated_at":"2026-06-04T12:34:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-09 10:14:10] production.INFO: Stock deduction for product: Antagit  200 ml  
[2026-06-09 10:14:10] production.INFO: Old stock: 10.00  
[2026-06-09 10:14:10] production.INFO: Quantity deducted: 1  
[2026-06-09 10:14:10] production.INFO: New stock: 9  
[2026-06-09 10:14:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780992847370"} 
[2026-06-09 10:47:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780994822066","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":95,"product_id":95,"name":"Bactoclav","sku":"1189","price":"9500.00","selling_price":"9500.00","purchase_price":"4900.00","quantity":1,"subtotal":9500,"product":{"id":95,"name":"Bactoclav","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4900.00","last_purchase_price":null,"selling_price":"9500.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-04T13:40:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 10:47:04] production.INFO: Stock deduction for product: Bactoclav  
[2026-06-09 10:47:04] production.INFO: Old stock: 13.00  
[2026-06-09 10:47:04] production.INFO: Quantity deducted: 1  
[2026-06-09 10:47:04] production.INFO: New stock: 12  
[2026-06-09 10:47:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780994822066"} 
[2026-06-09 10:50:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780995042767","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"85.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T08:12:16.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 10:50:45] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-09 10:50:45] production.INFO: Old stock: 85.00  
[2026-06-09 10:50:45] production.INFO: Quantity deducted: 2  
[2026-06-09 10:50:45] production.INFO: New stock: 83  
[2026-06-09 10:50:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780995042767"} 
[2026-06-09 10:58:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780995521619","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"55.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-07T09:40:01.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":3000},{"method":"airtel_money","amount":1000}]}} 
[2026-06-09 11:24:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1780997070266","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":611,"product_id":611,"name":"OPRA TABLET (Loperamide 2mg)","sku":"3248","price":"1500.00","selling_price":"1500.00","purchase_price":"700.00","quantity":1,"subtotal":1500,"product":{"id":611,"name":"OPRA TABLET (Loperamide 2mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"18.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3248","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T12:58:53.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 11:24:32] production.INFO: Stock deduction for product: OPRA TABLET (Loperamide 2mg)  
[2026-06-09 11:24:32] production.INFO: Old stock: 18.00  
[2026-06-09 11:24:32] production.INFO: Quantity deducted: 1  
[2026-06-09 11:24:32] production.INFO: New stock: 17  
[2026-06-09 11:24:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1780997070266"} 
[2026-06-09 12:14:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781000095939","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"7.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-09T07:32:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 12:14:58] production.INFO: Stock deduction for product: Iduplus  
[2026-06-09 12:14:58] production.INFO: Old stock: 6.00  
[2026-06-09 12:14:58] production.INFO: Quantity deducted: 1  
[2026-06-09 12:14:58] production.INFO: New stock: 5  
[2026-06-09 12:14:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781000095939"} 
[2026-06-09 12:33:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781001189152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"53.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T15:17:22.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 12:33:11] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-09 12:33:11] production.INFO: Old stock: 53.00  
[2026-06-09 12:33:11] production.INFO: Quantity deducted: 1  
[2026-06-09 12:33:11] production.INFO: New stock: 52  
[2026-06-09 12:33:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781001189152"} 
[2026-06-09 12:55:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781002554137","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":603,"product_id":603,"name":"Omeprazole Capules 20mg( Zosec )","sku":"3240","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":603,"name":"Omeprazole Capules 20mg( Zosec )","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3240","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-25T12:07:14.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-09 12:55:55] production.INFO: Stock deduction for product: Omeprazole Capules 20mg( Zosec )  
[2026-06-09 12:55:55] production.INFO: Old stock: 6.00  
[2026-06-09 12:55:55] production.INFO: Quantity deducted: 1  
[2026-06-09 12:55:55] production.INFO: New stock: 5  
[2026-06-09 12:55:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781002554137"} 
[2026-06-09 13:14:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781003678918","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":523,"product_id":523,"name":"LONART DS","sku":"3160","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":523,"name":"LONART DS","business_location":"EDUC Pharmacy","unit_id":"63","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"18.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3160","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T10:26:39.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 13:14:42] production.INFO: Stock deduction for product: LONART DS  
[2026-06-09 13:14:42] production.INFO: Old stock: 18.00  
[2026-06-09 13:14:42] production.INFO: Quantity deducted: 1  
[2026-06-09 13:14:42] production.INFO: New stock: 17  
[2026-06-09 13:14:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781003678918"} 
[2026-06-09 13:40:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781005249092","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":420,"product_id":420,"name":"GLUCOSE TEST","sku":"3057","price":"3500.00","selling_price":"3500.00","purchase_price":"1160.00","quantity":1,"subtotal":3500,"product":{"id":420,"name":"GLUCOSE TEST","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1160.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"24.00","stock":"25.00","product_type":"Single","tax":null,"sku":"3057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T07:21:04.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-09 13:40:50] production.INFO: Stock deduction for product: GLUCOSE TEST  
[2026-06-09 13:40:50] production.INFO: Old stock: 24.00  
[2026-06-09 13:40:50] production.INFO: Quantity deducted: 1  
[2026-06-09 13:40:50] production.INFO: New stock: 23  
[2026-06-09 13:40:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781005249092"} 
[2026-06-09 13:40:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781005250277","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":420,"product_id":420,"name":"GLUCOSE TEST","sku":"3057","price":"3500.00","selling_price":"3500.00","purchase_price":"1160.00","quantity":1,"subtotal":3500,"product":{"id":420,"name":"GLUCOSE TEST","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1160.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"24.00","stock":"25.00","product_type":"Single","tax":null,"sku":"3057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T07:21:04.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-09 13:40:51] production.INFO: Stock deduction for product: GLUCOSE TEST  
[2026-06-09 13:40:51] production.INFO: Old stock: 23.00  
[2026-06-09 13:40:51] production.INFO: Quantity deducted: 1  
[2026-06-09 13:40:51] production.INFO: New stock: 22  
[2026-06-09 13:40:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781005250277"} 
[2026-06-09 14:16:17] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:16:51] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:16:58] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:18:32] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:18:40] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:19:45] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:20:06] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:20:24] production.ERROR: SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: select * from `users` where `id` = 6 limit 1) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#55 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#56 {main}

[previous exception] [object] (PDOException(code: 2002): SQLSTATE[HY000] [2002] Can't connect to local server through socket '/var/lib/mysql/mysql.sock' (111) at /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate\\Database\\Query\\Builder->runSelect()
#14 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate\\Database\\Query\\Builder->onceWithColumns()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById()
#21 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#65 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#66 {main}
"} 
[2026-06-09 14:33:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781008438049","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"9.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-07T06:51:45.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-09 14:33:59] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-09 14:33:59] production.INFO: Old stock: 9.00  
[2026-06-09 14:33:59] production.INFO: Quantity deducted: 1  
[2026-06-09 14:33:59] production.INFO: New stock: 8  
[2026-06-09 14:33:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781008438049"} 
[2026-06-09 14:34:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781008453703","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":392,"product_id":392,"name":"FUNGIFEN-V CREAM (Clotrimazole 2% w/w), 30g","sku":"3029","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":392,"name":"FUNGIFEN-V CREAM (Clotrimazole 2% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3029","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-14T12:05:00.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 14:34:14] production.INFO: Stock deduction for product: FUNGIFEN-V CREAM (Clotrimazole 2% w/w), 30g  
[2026-06-09 14:34:14] production.INFO: Old stock: 11.00  
[2026-06-09 14:34:14] production.INFO: Quantity deducted: 1  
[2026-06-09 14:34:14] production.INFO: New stock: 10  
[2026-06-09 14:34:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781008453703"} 
[2026-06-09 14:37:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781008670358","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"251.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-08T17:17:33.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 14:37:52] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-09 14:37:52] production.INFO: Old stock: 251.00  
[2026-06-09 14:37:52] production.INFO: Quantity deducted: 4  
[2026-06-09 14:37:52] production.INFO: New stock: 247  
[2026-06-09 14:37:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781008670358"} 
[2026-06-09 14:51:59] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781009517338","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":408,"product_id":408,"name":"Gentamicin Injection( Gentamedine)","sku":"3045","price":"1000.00","selling_price":"1000.00","purchase_price":"350.00","quantity":3,"subtotal":3000,"product":{"id":408,"name":"Gentamicin Injection( Gentamedine)","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"350.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"28.00","stock":"28.00","product_type":"Single","tax":null,"sku":"3045","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-04T06:02:45.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"37.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T07:04:27.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"41.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T07:04:28.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"52.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T07:04:28.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 14:51:59] production.INFO: Stock deduction for product: Gentamicin Injection( Gentamedine)  
[2026-06-09 14:51:59] production.INFO: Old stock: 28.00  
[2026-06-09 14:51:59] production.INFO: Quantity deducted: 3  
[2026-06-09 14:51:59] production.INFO: New stock: 25  
[2026-06-09 14:51:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-09 14:51:59] production.INFO: Old stock: 37.00  
[2026-06-09 14:51:59] production.INFO: Quantity deducted: 1  
[2026-06-09 14:51:59] production.INFO: New stock: 36  
[2026-06-09 14:51:59] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-09 14:51:59] production.INFO: Old stock: 41.00  
[2026-06-09 14:51:59] production.INFO: Quantity deducted: 1  
[2026-06-09 14:51:59] production.INFO: New stock: 40  
[2026-06-09 14:51:59] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-09 14:51:59] production.INFO: Old stock: 52.00  
[2026-06-09 14:51:59] production.INFO: Quantity deducted: 1  
[2026-06-09 14:51:59] production.INFO: New stock: 51  
[2026-06-09 14:51:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781009517338"} 
[2026-06-09 15:06:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781010395607","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"87.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-05T15:38:09.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 15:06:36] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-06-09 15:06:36] production.INFO: Old stock: 87.00  
[2026-06-09 15:06:36] production.INFO: Quantity deducted: 1  
[2026-06-09 15:06:36] production.INFO: New stock: 86  
[2026-06-09 15:06:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781010395607"} 
[2026-06-09 15:09:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781010578301","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"5.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-09T10:14:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 15:09:39] production.INFO: Stock deduction for product: Iduplus  
[2026-06-09 15:09:39] production.INFO: Old stock: 5.00  
[2026-06-09 15:09:39] production.INFO: Quantity deducted: 1  
[2026-06-09 15:09:39] production.INFO: New stock: 4  
[2026-06-09 15:09:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781010578301"} 
[2026-06-09 15:27:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781011665097","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":2,"subtotal":24000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"8.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-09T12:33:59.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 15:27:47] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-09 15:27:47] production.INFO: Old stock: 8.00  
[2026-06-09 15:27:47] production.INFO: Quantity deducted: 2  
[2026-06-09 15:27:47] production.INFO: New stock: 6  
[2026-06-09 15:27:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781011665097"} 
[2026-06-09 15:33:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781011980584","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"6.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-09T13:27:47.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 15:33:02] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-09 15:33:02] production.INFO: Old stock: 6.00  
[2026-06-09 15:33:02] production.INFO: Quantity deducted: 1  
[2026-06-09 15:33:02] production.INFO: New stock: 5  
[2026-06-09 15:33:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781011980584"} 
[2026-06-09 15:34:12] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781012050495","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"13.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T11:41:07.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":1,"subtotal":1000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T15:40:15.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 15:34:12] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-06-09 15:34:12] production.INFO: Old stock: 13.00  
[2026-06-09 15:34:12] production.INFO: Quantity deducted: 1  
[2026-06-09 15:34:12] production.INFO: New stock: 12  
[2026-06-09 15:34:12] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-06-09 15:34:12] production.INFO: Old stock: 23.00  
[2026-06-09 15:34:12] production.INFO: Quantity deducted: 1  
[2026-06-09 15:34:12] production.INFO: New stock: 22  
[2026-06-09 15:34:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781012050495"} 
[2026-06-09 16:49:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781016549892","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-29T04:24:48.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 16:49:14] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-06-09 16:49:14] production.INFO: Old stock: 4.00  
[2026-06-09 16:49:14] production.INFO: Quantity deducted: 1  
[2026-06-09 16:49:14] production.INFO: New stock: 3  
[2026-06-09 16:49:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781016549892"} 
[2026-06-09 17:03:09] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781017387199","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":453,"product_id":453,"name":"HYCORUM CREAM (Hydrocortisone Cream 1% w/w), 15g","sku":"3090","price":"2500.00","selling_price":"2500.00","purchase_price":"1050.00","quantity":1,"subtotal":2500,"product":{"id":453,"name":"HYCORUM CREAM (Hydrocortisone Cream 1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"31","supplier_id":null,"purchase_price":"1050.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3090","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":168,"product_id":168,"name":"CETLIN (Cetirizine Oral), 60ml","sku":"0728","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":168,"name":"CETLIN (Cetirizine Oral), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"22","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0728","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-02T17:17:39.000000Z","brand":{"id":22,"name":"Calcimin","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-09 17:03:09] production.INFO: Stock deduction for product: HYCORUM CREAM (Hydrocortisone Cream 1% w/w), 15g  
[2026-06-09 17:03:09] production.INFO: Old stock: 1.00  
[2026-06-09 17:03:09] production.INFO: Quantity deducted: 1  
[2026-06-09 17:03:09] production.INFO: New stock: 0  
[2026-06-09 17:03:09] production.INFO: Stock deduction for product: CETLIN (Cetirizine Oral), 60ml  
[2026-06-09 17:03:09] production.INFO: Old stock: 5.00  
[2026-06-09 17:03:09] production.INFO: Quantity deducted: 1  
[2026-06-09 17:03:09] production.INFO: New stock: 4  
[2026-06-09 17:03:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781017387199"} 
[2026-06-09 17:04:08] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781017447775","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":696,"product_id":696,"name":"SINURRHON SYRUP","sku":"3333","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":696,"name":"SINURRHON SYRUP","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3333","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-13T02:51:19.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"139.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T13:11:07.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":2,"subtotal":300,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T15:22:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"83.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T08:50:45.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-09 17:04:08] production.INFO: Stock deduction for product: SINURRHON SYRUP  
[2026-06-09 17:04:08] production.INFO: Old stock: 5.00  
[2026-06-09 17:04:08] production.INFO: Quantity deducted: 1  
[2026-06-09 17:04:08] production.INFO: New stock: 4  
[2026-06-09 17:04:08] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-09 17:04:08] production.INFO: Old stock: 139.00  
[2026-06-09 17:04:08] production.INFO: Quantity deducted: 1  
[2026-06-09 17:04:08] production.INFO: New stock: 138  
[2026-06-09 17:04:08] production.INFO: Stock deduction for product: Tumbocid  
[2026-06-09 17:04:08] production.INFO: Old stock: 30.00  
[2026-06-09 17:04:08] production.INFO: Quantity deducted: 2  
[2026-06-09 17:04:08] production.INFO: New stock: 28  
[2026-06-09 17:04:08] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-09 17:04:08] production.INFO: Old stock: 83.00  
[2026-06-09 17:04:08] production.INFO: Quantity deducted: 1  
[2026-06-09 17:04:08] production.INFO: New stock: 82  
[2026-06-09 17:04:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781017447775"} 
[2026-06-09 17:04:56] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781017495399","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":764,"product_id":764,"name":"Welgra-100mg","sku":"3401","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":764,"name":"Welgra-100mg","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3401","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T11:32:40.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"423.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T07:11:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 17:04:56] production.INFO: Stock deduction for product: Welgra-100mg  
[2026-06-09 17:04:56] production.INFO: Old stock: 1.00  
[2026-06-09 17:04:56] production.INFO: Quantity deducted: 1  
[2026-06-09 17:04:56] production.INFO: New stock: 0  
[2026-06-09 17:04:56] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-09 17:04:56] production.INFO: Old stock: 423.00  
[2026-06-09 17:04:56] production.INFO: Quantity deducted: 1  
[2026-06-09 17:04:56] production.INFO: New stock: 422  
[2026-06-09 17:04:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781017495399"} 
[2026-06-09 17:10:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781017858222","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"12.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-04T15:24:45.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 17:10:59] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-06-09 17:10:59] production.INFO: Old stock: 12.00  
[2026-06-09 17:10:59] production.INFO: Quantity deducted: 1  
[2026-06-09 17:10:59] production.INFO: New stock: 11  
[2026-06-09 17:10:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781017858222"} 
[2026-06-09 17:50:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781020205444","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"82.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T15:04:08.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 17:50:08] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-09 17:50:08] production.INFO: Old stock: 82.00  
[2026-06-09 17:50:08] production.INFO: Quantity deducted: 1  
[2026-06-09 17:50:08] production.INFO: New stock: 81  
[2026-06-09 17:50:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781020205444"} 
[2026-06-09 19:20:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781025650377","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"4.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T08:12:09.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 19:20:52] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-09 19:20:52] production.INFO: Old stock: 4.00  
[2026-06-09 19:20:52] production.INFO: Quantity deducted: 1  
[2026-06-09 19:20:52] production.INFO: New stock: 3  
[2026-06-09 19:20:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781025650377"} 
[2026-06-09 19:44:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781027087309","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"40.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T12:51:59.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"36.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T12:51:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-09 19:44:49] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-09 19:44:49] production.INFO: Old stock: 40.00  
[2026-06-09 19:44:49] production.INFO: Quantity deducted: 1  
[2026-06-09 19:44:49] production.INFO: New stock: 39  
[2026-06-09 19:44:49] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-09 19:44:49] production.INFO: Old stock: 36.00  
[2026-06-09 19:44:49] production.INFO: Quantity deducted: 1  
[2026-06-09 19:44:49] production.INFO: New stock: 35  
[2026-06-09 19:44:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781027087309"} 
[2026-06-09 20:26:22] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781029581214","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":465,"product_id":465,"name":"IBUT-400 (Ibuprofen 400mg)","sku":"3102","price":"1000.00","selling_price":"1000.00","purchase_price":"525.00","quantity":1,"subtotal":1000,"product":{"id":465,"name":"IBUT-400 (Ibuprofen 400mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"525.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3102","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T07:33:24.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"62.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T17:26:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-09 20:26:22] production.INFO: Stock deduction for product: IBUT-400 (Ibuprofen 400mg)  
[2026-06-09 20:26:22] production.INFO: Old stock: 3.00  
[2026-06-09 20:26:22] production.INFO: Quantity deducted: 1  
[2026-06-09 20:26:22] production.INFO: New stock: 2  
[2026-06-09 20:26:22] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-09 20:26:22] production.INFO: Old stock: 62.00  
[2026-06-09 20:26:22] production.INFO: Quantity deducted: 1  
[2026-06-09 20:26:22] production.INFO: New stock: 61  
[2026-06-09 20:26:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781029581214"} 
[2026-06-10 08:13:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781071981289","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":1,"subtotal":800,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"36.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-18T05:34:14.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"422.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T15:04:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 08:13:03] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-06-10 08:13:03] production.INFO: Old stock: 36.00  
[2026-06-10 08:13:03] production.INFO: Quantity deducted: 1  
[2026-06-10 08:13:03] production.INFO: New stock: 35  
[2026-06-10 08:13:03] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-10 08:13:03] production.INFO: Old stock: 422.00  
[2026-06-10 08:13:03] production.INFO: Quantity deducted: 1  
[2026-06-10 08:13:03] production.INFO: New stock: 421  
[2026-06-10 08:13:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781071981289"} 
[2026-06-10 09:33:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781076831175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":61,"product_id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","sku":"0674","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":3,"subtotal":4500,"product":{"id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"35.00","stock":"35.00","product_type":"Single","tax":null,"sku":"0674","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-25T09:51:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"7.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-06T15:18:28.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-10 09:33:53] production.INFO: Stock deduction for product: AMLODIPINE 5MG (AMLODAWA) 10s  
[2026-06-10 09:33:53] production.INFO: Old stock: 35.00  
[2026-06-10 09:33:53] production.INFO: Quantity deducted: 3  
[2026-06-10 09:33:53] production.INFO: New stock: 32  
[2026-06-10 09:33:53] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-06-10 09:33:53] production.INFO: Old stock: 7.00  
[2026-06-10 09:33:53] production.INFO: Quantity deducted: 1  
[2026-06-10 09:33:53] production.INFO: New stock: 6  
[2026-06-10 09:33:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781076831175"} 
[2026-06-10 09:34:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781076841078","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":1,"subtotal":150,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"28.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T15:04:08.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 09:34:02] production.INFO: Stock deduction for product: Tumbocid  
[2026-06-10 09:34:02] production.INFO: Old stock: 28.00  
[2026-06-10 09:34:02] production.INFO: Quantity deducted: 1  
[2026-06-10 09:34:02] production.INFO: New stock: 27  
[2026-06-10 09:34:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781076841078"} 
[2026-06-10 09:34:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781076855645","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"247.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T12:37:52.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-10 09:34:17] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-10 09:34:17] production.INFO: Old stock: 247.00  
[2026-06-10 09:34:17] production.INFO: Quantity deducted: 2  
[2026-06-10 09:34:17] production.INFO: New stock: 245  
[2026-06-10 09:34:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781076855645"} 
[2026-06-10 09:34:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781076872546","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":109,"product_id":109,"name":"Benylin with Codeine","sku":"1335","price":"50000.00","selling_price":"50000.00","purchase_price":"27000.00","quantity":1,"subtotal":50000,"product":{"id":109,"name":"Benylin with Codeine","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"27000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"3.00","stock":"6.00","product_type":"Single","tax":null,"sku":"1335","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-22T11:38:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-10 09:34:34] production.INFO: Stock deduction for product: Benylin with Codeine  
[2026-06-10 09:34:34] production.INFO: Old stock: 3.00  
[2026-06-10 09:34:34] production.INFO: Quantity deducted: 1  
[2026-06-10 09:34:34] production.INFO: New stock: 2  
[2026-06-10 09:34:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781076872546"} 
[2026-06-10 09:34:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781076881192","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"69.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-08T07:08:37.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 09:34:43] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-10 09:34:43] production.INFO: Old stock: 69.00  
[2026-06-10 09:34:43] production.INFO: Quantity deducted: 1  
[2026-06-10 09:34:43] production.INFO: New stock: 68  
[2026-06-10 09:34:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781076881192"} 
[2026-06-10 09:34:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781076893991","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":2,"subtotal":4000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"32.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-06T12:24:37.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 09:34:55] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-10 09:34:55] production.INFO: Old stock: 32.00  
[2026-06-10 09:34:55] production.INFO: Quantity deducted: 2  
[2026-06-10 09:34:55] production.INFO: New stock: 30  
[2026-06-10 09:34:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781076893991"} 
[2026-06-10 09:51:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781077909254","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"700.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"DOXY CAPSULES (Doxycycline 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"36.00","stock":"43.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-08T15:02:41.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 09:51:51] production.INFO: Stock deduction for product: DOXY CAPSULES (Doxycycline 100mg)  
[2026-06-10 09:51:51] production.INFO: Old stock: 36.00  
[2026-06-10 09:51:51] production.INFO: Quantity deducted: 1  
[2026-06-10 09:51:51] production.INFO: New stock: 35  
[2026-06-10 09:51:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781077909254"} 
[2026-06-10 10:00:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781078448243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-09T08:12:01.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:00:50] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-10 10:00:50] production.INFO: Old stock: 21.00  
[2026-06-10 10:00:50] production.INFO: Quantity deducted: 1  
[2026-06-10 10:00:50] production.INFO: New stock: 20  
[2026-06-10 10:00:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781078448243"} 
[2026-06-10 10:34:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781080455154","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":843,"product_id":843,"name":"Acyclovir 800mg","sku":"PRD-00843","price":"10000.00","selling_price":"10000.00","purchase_price":"1500.00","quantity":1,"subtotal":10000,"product":{"id":843,"name":"Acyclovir 800mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"10000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00843","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":"2026-04-18","created_at":"2026-04-18T14:27:58.000000Z","updated_at":"2026-06-04T14:45:04.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T09:23:14.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":603,"product_id":603,"name":"Omeprazole Capules 20mg( Zosec )","sku":"3240","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":603,"name":"Omeprazole Capules 20mg( Zosec )","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3240","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-09T10:55:55.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:34:16] production.INFO: Stock deduction for product: Acyclovir 800mg  
[2026-06-10 10:34:16] production.INFO: Old stock: 3.00  
[2026-06-10 10:34:16] production.INFO: Quantity deducted: 1  
[2026-06-10 10:34:16] production.INFO: New stock: 2  
[2026-06-10 10:34:16] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-10 10:34:16] production.INFO: Old stock: 19.00  
[2026-06-10 10:34:16] production.INFO: Quantity deducted: 1  
[2026-06-10 10:34:16] production.INFO: New stock: 18  
[2026-06-10 10:34:16] production.INFO: Stock deduction for product: Omeprazole Capules 20mg( Zosec )  
[2026-06-10 10:34:16] production.INFO: Old stock: 5.00  
[2026-06-10 10:34:16] production.INFO: Quantity deducted: 1  
[2026-06-10 10:34:16] production.INFO: New stock: 4  
[2026-06-10 10:34:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781080455154"} 
[2026-06-10 10:36:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781080570081","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":393,"product_id":393,"name":"FUNGINIL-K (Ketoconazole Tablets)","sku":"3030","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":393,"name":"FUNGINIL-K (Ketoconazole Tablets)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"15","brand_id":"1","supplier_id":null,"purchase_price":"2750.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3030","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-08T08:52:54.000000Z","brand":null,"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:36:11] production.INFO: Stock deduction for product: FUNGINIL-K (Ketoconazole Tablets)  
[2026-06-10 10:36:11] production.INFO: Old stock: 6.00  
[2026-06-10 10:36:11] production.INFO: Quantity deducted: 1  
[2026-06-10 10:36:11] production.INFO: New stock: 5  
[2026-06-10 10:36:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781080570081"} 
[2026-06-10 10:39:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781080780280","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":539,"product_id":539,"name":"Malaria Test Kit (Antigen Test)","sku":"3176","price":"10000.00","selling_price":"10000.00","purchase_price":"5500.00","quantity":1,"subtotal":10000,"product":{"id":539,"name":"Malaria Test Kit (Antigen Test)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3176","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T15:40:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:39:41] production.INFO: Stock deduction for product: Malaria Test Kit (Antigen Test)  
[2026-06-10 10:39:41] production.INFO: Old stock: 2.00  
[2026-06-10 10:39:41] production.INFO: Quantity deducted: 1  
[2026-06-10 10:39:41] production.INFO: New stock: 1  
[2026-06-10 10:39:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781080780280"} 
[2026-06-10 10:40:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781080855969","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"48.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T06:11:42.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:40:56] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-10 10:40:56] production.INFO: Old stock: 48.00  
[2026-06-10 10:40:56] production.INFO: Quantity deducted: 1  
[2026-06-10 10:40:56] production.INFO: New stock: 47  
[2026-06-10 10:40:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781080855969"} 
[2026-06-10 10:41:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781080886232","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":780,"product_id":780,"name":"ZYLO-P SOLUTION (POVIDONE IODINE 10%) 100ML","sku":"3417","price":"5000.00","selling_price":"5000.00","purchase_price":"2950.00","quantity":1,"subtotal":5000,"product":{"id":780,"name":"ZYLO-P SOLUTION (POVIDONE IODINE 10%) 100ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3417","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T18:48:56.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:41:26] production.INFO: Stock deduction for product: ZYLO-P SOLUTION (POVIDONE IODINE 10%) 100ML  
[2026-06-10 10:41:26] production.INFO: Old stock: 8.00  
[2026-06-10 10:41:26] production.INFO: Quantity deducted: 1  
[2026-06-10 10:41:26] production.INFO: New stock: 7  
[2026-06-10 10:41:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781080886232"} 
[2026-06-10 10:42:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781080955312","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":803,"product_id":803,"name":"Cotton Tips (Soft Touch)","sku":"1254","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":803,"name":"Cotton Tips (Soft Touch)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1254","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-08T15:07:25.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:42:37] production.INFO: Stock deduction for product: Cotton Tips (Soft Touch)  
[2026-06-10 10:42:37] production.INFO: Old stock: 4.00  
[2026-06-10 10:42:37] production.INFO: Quantity deducted: 1  
[2026-06-10 10:42:37] production.INFO: New stock: 3  
[2026-06-10 10:42:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781080955312"} 
[2026-06-10 10:43:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781081000192","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":5,"subtotal":10000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"68.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-10T07:34:43.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:43:20] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-10 10:43:20] production.INFO: Old stock: 68.00  
[2026-06-10 10:43:20] production.INFO: Quantity deducted: 5  
[2026-06-10 10:43:20] production.INFO: New stock: 63  
[2026-06-10 10:43:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781081000192"} 
[2026-06-10 10:49:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781081389391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":528,"product_id":528,"name":"LOSARTAN POTASSIUM","sku":"3165","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":528,"name":"LOSARTAN POTASSIUM","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"39.00","stock":"51.00","product_type":"Single","tax":null,"sku":"3165","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-04T11:41:07.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":282,"product_id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","sku":"0800","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"14.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0800","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-18T08:44:16.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:49:50] production.INFO: Stock deduction for product: LOSARTAN POTASSIUM  
[2026-06-10 10:49:50] production.INFO: Old stock: 39.00  
[2026-06-10 10:49:50] production.INFO: Quantity deducted: 1  
[2026-06-10 10:49:50] production.INFO: New stock: 38  
[2026-06-10 10:49:50] production.INFO: Stock deduction for product: ENALAPRIL MALEATA TABLETS 5MG  
[2026-06-10 10:49:50] production.INFO: Old stock: 14.00  
[2026-06-10 10:49:50] production.INFO: Quantity deducted: 1  
[2026-06-10 10:49:50] production.INFO: New stock: 13  
[2026-06-10 10:49:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781081389391"} 
[2026-06-10 10:54:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781081649990","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T12:20:47.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"386.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T07:11:08.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"421.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T06:13:03.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 10:54:11] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-10 10:54:11] production.INFO: Old stock: 25.00  
[2026-06-10 10:54:11] production.INFO: Quantity deducted: 1  
[2026-06-10 10:54:11] production.INFO: New stock: 24  
[2026-06-10 10:54:11] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-10 10:54:11] production.INFO: Old stock: 386.00  
[2026-06-10 10:54:11] production.INFO: Quantity deducted: 1  
[2026-06-10 10:54:11] production.INFO: New stock: 385  
[2026-06-10 10:54:11] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-10 10:54:11] production.INFO: Old stock: 421.00  
[2026-06-10 10:54:11] production.INFO: Quantity deducted: 1  
[2026-06-10 10:54:11] production.INFO: New stock: 420  
[2026-06-10 10:54:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781081649990"} 
[2026-06-10 11:27:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781083663256","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":254,"product_id":254,"name":"DISPOSABLE SYRINGE 2ML","sku":"0783","price":"250.00","selling_price":"250.00","purchase_price":"119.00","quantity":10,"subtotal":2500,"product":{"id":254,"name":"DISPOSABLE SYRINGE 2ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"119.00","last_purchase_price":null,"selling_price":"250.00","current_stock":"34.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0783","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-02T15:58:28.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 11:27:45] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 2ML  
[2026-06-10 11:27:45] production.INFO: Old stock: 34.00  
[2026-06-10 11:27:45] production.INFO: Quantity deducted: 10  
[2026-06-10 11:27:45] production.INFO: New stock: 24  
[2026-06-10 11:27:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781083663256"} 
[2026-06-10 11:33:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781084020855","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"63.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-10T08:43:20.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 11:33:41] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-10 11:33:41] production.INFO: Old stock: 63.00  
[2026-06-10 11:33:41] production.INFO: Quantity deducted: 1  
[2026-06-10 11:33:41] production.INFO: New stock: 62  
[2026-06-10 11:33:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781084020855"} 
[2026-06-10 11:44:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781084683133","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"81.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T15:50:08.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 11:44:44] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-10 11:44:44] production.INFO: Old stock: 81.00  
[2026-06-10 11:44:44] production.INFO: Quantity deducted: 1  
[2026-06-10 11:44:44] production.INFO: New stock: 80  
[2026-06-10 11:44:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781084683133"} 
[2026-06-10 12:02:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781085757314","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"95.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-08T15:30:53.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 12:02:39] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-10 12:02:39] production.INFO: Old stock: 95.00  
[2026-06-10 12:02:39] production.INFO: Quantity deducted: 1  
[2026-06-10 12:02:39] production.INFO: New stock: 94  
[2026-06-10 12:02:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781085757314"} 
[2026-06-10 12:15:54] production.INFO: Stock Adjustment - Initial State {"product_id":"80","previous_quantity":"3.00","previous_selling_price":"15000.00","validated_data":{"product_id":"80","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"17000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:15:54] production.INFO: Stock Adjustment - After Quantity Save {"product_id":80,"new_quantity":23.0,"current_stock":23.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:16:41] production.INFO: Stock Adjustment - Initial State {"product_id":"874","previous_quantity":"0.00","previous_selling_price":"3500.00","validated_data":{"product_id":"874","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:16:41] production.INFO: Stock Adjustment - After Quantity Save {"product_id":874,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:17:33] production.INFO: Stock Adjustment - Initial State {"product_id":"192","previous_quantity":"3.00","previous_selling_price":"2500.00","validated_data":{"product_id":"192","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:17:33] production.INFO: Stock Adjustment - After Quantity Save {"product_id":192,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:18:01] production.INFO: Stock Adjustment - Initial State {"product_id":"193","previous_quantity":"5.00","previous_selling_price":"5000.00","validated_data":{"product_id":"193","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:18:01] production.INFO: Stock Adjustment - After Quantity Save {"product_id":193,"new_quantity":17.0,"current_stock":17.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:19:45] production.INFO: Product Store - Request Data {"all_data":{"_token":"mxeoOERxk2YjWYFdiIJAdIimaSg3dVXHKJEd3ebE","name":"Malaria Ag Pf","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"560.00","selling_price":"1500.00","description":null,"purchase_quantity":"20.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-10 12:19:45] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Malaria Ag Pf","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"560.00","selling_price":"1500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-10 12:19:45] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Malaria Ag Pf","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"560.00","selling_price":"1500.00","sku":"PRD-00905","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"20.00","last_purchase_price":"560.00","last_purchase_date":"2026-06-10 12:19:45"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-10 12:19:45] production.INFO: Product Store - Product Created {"product_id":905,"product_name":"Malaria Ag Pf","product_sku":"PRD-00905"} 
[2026-06-10 12:23:14] production.INFO: Stock Adjustment - Initial State {"product_id":"841","previous_quantity":"0.00","previous_selling_price":"25000.00","validated_data":{"product_id":"841","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:23:14] production.INFO: Stock Adjustment - After Quantity Save {"product_id":841,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:25:17] production.INFO: Stock Adjustment - Initial State {"product_id":"598","previous_quantity":"2.00","previous_selling_price":"7000.00","validated_data":{"product_id":"598","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:25:17] production.INFO: Stock Adjustment - After Quantity Save {"product_id":598,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:27:32] production.INFO: Product Store - Request Data {"all_data":{"_token":"mxeoOERxk2YjWYFdiIJAdIimaSg3dVXHKJEd3ebE","name":"Dawaflox","sku":null,"category_id":"7","brand_id":"8","unit_id":"65","purchase_price":"2000.00","selling_price":"4000.00","description":null,"purchase_quantity":"50.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-10 12:27:32] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Dawaflox","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2000.00","selling_price":"4000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"50.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-10 12:27:32] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Dawaflox","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2000.00","selling_price":"4000.00","sku":"PRD-00906","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"50.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"50.00","last_purchase_price":"2000.00","last_purchase_date":"2026-06-10 12:27:32"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-10 12:27:32] production.INFO: Product Store - Product Created {"product_id":906,"product_name":"Dawaflox","product_sku":"PRD-00906"} 
[2026-06-10 12:29:57] production.INFO: Stock Adjustment - Initial State {"product_id":"448","previous_quantity":"3.00","previous_selling_price":"11000.00","validated_data":{"product_id":"448","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:29:57] production.INFO: Stock Adjustment - After Quantity Save {"product_id":448,"new_quantity":23.0,"current_stock":23.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:34:01] production.INFO: Product Store - Request Data {"all_data":{"_token":"mxeoOERxk2YjWYFdiIJAdIimaSg3dVXHKJEd3ebE","name":"Amoxicillin Syrup (Crocillin)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2600.00","selling_price":"5500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-10 12:34:01] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Amoxicillin Syrup (Crocillin)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2600.00","selling_price":"5500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-10 12:34:01] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Amoxicillin Syrup (Crocillin)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2600.00","selling_price":"5500.00","sku":"PRD-00907","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"2600.00","last_purchase_date":"2026-06-10 12:34:01"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-10 12:34:01] production.INFO: Product Store - Product Created {"product_id":907,"product_name":"Amoxicillin Syrup (Crocillin)","product_sku":"PRD-00907"} 
[2026-06-10 12:35:56] production.INFO: Stock Adjustment - Initial State {"product_id":"260","previous_quantity":"35.00","previous_selling_price":"2500.00","validated_data":{"product_id":"260","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:35:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":260,"new_quantity":55.0,"current_stock":55.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:37:06] production.INFO: Stock Adjustment - Initial State {"product_id":"654","previous_quantity":"3.00","previous_selling_price":"5000.00","validated_data":{"product_id":"654","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:37:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":654,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:37:37] production.INFO: Stock Adjustment - Initial State {"product_id":"539","previous_quantity":"1.00","previous_selling_price":"10000.00","validated_data":{"product_id":"539","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:37:37] production.INFO: Stock Adjustment - After Quantity Save {"product_id":539,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:40:10] production.INFO: Stock Adjustment - Initial State {"product_id":"419","previous_quantity":"12.00","previous_selling_price":"1500.00","validated_data":{"product_id":"419","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:40:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":419,"new_quantity":62.0,"current_stock":62.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:40:51] production.INFO: Stock Adjustment - Initial State {"product_id":"550","previous_quantity":"3.00","previous_selling_price":"1500.00","validated_data":{"product_id":"550","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:40:51] production.INFO: Stock Adjustment - After Quantity Save {"product_id":550,"new_quantity":33.0,"current_stock":33.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:43:08] production.INFO: Stock Adjustment - Initial State {"product_id":"498","previous_quantity":"20.00","previous_selling_price":"1500.00","validated_data":{"product_id":"498","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:43:08] production.INFO: Stock Adjustment - After Quantity Save {"product_id":498,"new_quantity":70.0,"current_stock":70.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:44:26] production.INFO: Stock Adjustment - Initial State {"product_id":"161","previous_quantity":"2.00","previous_selling_price":"8500.00","validated_data":{"product_id":"161","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"13000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 12:44:26] production.INFO: Stock Adjustment - After Quantity Save {"product_id":161,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 12:46:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781088409410","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":3,"subtotal":3000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"175.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T14:37:04.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T14:49:14.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-10 12:46:50] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-10 12:46:50] production.INFO: Old stock: 175.00  
[2026-06-10 12:46:50] production.INFO: Quantity deducted: 3  
[2026-06-10 12:46:50] production.INFO: New stock: 172  
[2026-06-10 12:46:50] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-06-10 12:46:50] production.INFO: Old stock: 3.00  
[2026-06-10 12:46:50] production.INFO: Quantity deducted: 1  
[2026-06-10 12:46:50] production.INFO: New stock: 2  
[2026-06-10 12:46:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781088409410"} 
[2026-06-10 12:52:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781088727010","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"54.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-09T08:58:45.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"94.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T10:02:39.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 12:52:07] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-10 12:52:07] production.INFO: Old stock: 54.00  
[2026-06-10 12:52:07] production.INFO: Quantity deducted: 1  
[2026-06-10 12:52:07] production.INFO: New stock: 53  
[2026-06-10 12:52:07] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-10 12:52:07] production.INFO: Old stock: 94.00  
[2026-06-10 12:52:07] production.INFO: Quantity deducted: 1  
[2026-06-10 12:52:07] production.INFO: New stock: 93  
[2026-06-10 12:52:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781088727010"} 
[2026-06-10 13:50:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781092234480","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"52.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T12:52:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 13:50:42] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-10 13:50:42] production.INFO: Old stock: 52.00  
[2026-06-10 13:50:42] production.INFO: Quantity deducted: 1  
[2026-06-10 13:50:42] production.INFO: New stock: 51  
[2026-06-10 13:50:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781092234480"} 
[2026-06-10 13:55:29] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781092524655","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":539,"product_id":539,"name":"Malaria Test Kit (Antigen Test)","sku":"3176","price":"10000.00","selling_price":"10000.00","purchase_price":"5500.00","quantity":1,"subtotal":10000,"product":{"id":539,"name":"Malaria Test Kit (Antigen Test)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3176","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T10:37:37.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"15.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-09T07:04:27.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T07:04:27.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"51.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T12:51:59.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 13:55:29] production.INFO: Stock deduction for product: Malaria Test Kit (Antigen Test)  
[2026-06-10 13:55:29] production.INFO: Old stock: 11.00  
[2026-06-10 13:55:29] production.INFO: Quantity deducted: 1  
[2026-06-10 13:55:29] production.INFO: New stock: 10  
[2026-06-10 13:55:29] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-06-10 13:55:29] production.INFO: Old stock: 15.00  
[2026-06-10 13:55:29] production.INFO: Quantity deducted: 1  
[2026-06-10 13:55:29] production.INFO: New stock: 14  
[2026-06-10 13:55:29] production.INFO: Stock deduction for product: Water for Injection  
[2026-06-10 13:55:29] production.INFO: Old stock: 21.00  
[2026-06-10 13:55:29] production.INFO: Quantity deducted: 1  
[2026-06-10 13:55:29] production.INFO: New stock: 20  
[2026-06-10 13:55:29] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-10 13:55:29] production.INFO: Old stock: 51.00  
[2026-06-10 13:55:29] production.INFO: Quantity deducted: 1  
[2026-06-10 13:55:29] production.INFO: New stock: 50  
[2026-06-10 13:55:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781092524655"} 
[2026-06-10 13:59:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781092788894","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"93.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T10:52:07.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 13:59:49] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-10 13:59:49] production.INFO: Old stock: 93.00  
[2026-06-10 13:59:49] production.INFO: Quantity deducted: 1  
[2026-06-10 13:59:49] production.INFO: New stock: 92  
[2026-06-10 13:59:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781092788894"} 
[2026-06-10 14:47:43] production.INFO: Stock Adjustment - Initial State {"product_id":"536","previous_quantity":"16.00","previous_selling_price":"1000.00","validated_data":{"product_id":"536","adjustment_type":"add","quantity":"110","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:47:43] production.INFO: Stock Adjustment - After Quantity Save {"product_id":536,"new_quantity":126.0,"current_stock":126.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 14:50:31] production.INFO: Stock Adjustment - Initial State {"product_id":"519","previous_quantity":"24.00","previous_selling_price":"1500.00","validated_data":{"product_id":"519","adjustment_type":"add","quantity":"60","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:50:31] production.INFO: Stock Adjustment - After Quantity Save {"product_id":519,"new_quantity":84.0,"current_stock":84.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 14:52:12] production.INFO: Stock Adjustment - Initial State {"product_id":"53","previous_quantity":"2.00","previous_selling_price":"4500.00","validated_data":{"product_id":"53","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:52:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":53,"new_quantity":22.0,"current_stock":22.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 14:56:46] production.INFO: Stock Adjustment - Initial State {"product_id":"51","previous_quantity":"3.00","previous_selling_price":"11000.00","validated_data":{"product_id":"51","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"13000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:56:46] production.INFO: Stock Adjustment - After Quantity Save {"product_id":51,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 14:57:32] production.INFO: Stock Adjustment - Initial State {"product_id":"528","previous_quantity":"38.00","previous_selling_price":"1500.00","validated_data":{"product_id":"528","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":"1500.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:57:32] production.INFO: Stock Adjustment - After Quantity Save {"product_id":528,"new_quantity":88.0,"current_stock":88.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 14:58:10] production.INFO: Stock Adjustment - Initial State {"product_id":"859","previous_quantity":"4.00","previous_selling_price":"6500.00","validated_data":{"product_id":"859","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:58:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":859,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 14:59:23] production.INFO: Stock Adjustment - Initial State {"product_id":"859","previous_quantity":"9.00","previous_selling_price":"6000.00","validated_data":{"product_id":"859","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"6500.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 14:59:23] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":859,"new_selling_price":"6500.00","current_stock":"9.00","changes_made":"Prices updated only"} 
[2026-06-10 15:00:29] production.INFO: Stock Adjustment - Initial State {"product_id":"820","previous_quantity":"30.00","previous_selling_price":"2000.00","validated_data":{"product_id":"820","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 15:00:29] production.INFO: Stock Adjustment - After Quantity Save {"product_id":820,"new_quantity":80.0,"current_stock":80.0,"changes_made":"Quantity adjusted"} 
[2026-06-10 15:04:29] production.INFO: Product Store - Request Data {"all_data":{"_token":"mxeoOERxk2YjWYFdiIJAdIimaSg3dVXHKJEd3ebE","name":"CoTrimoxazole Syp (LTrim)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2350.00","selling_price":"4500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-10 15:04:29] production.INFO: Product Store - Validation Success {"validated_data":{"name":"CoTrimoxazole Syp (LTrim)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","selling_price":"4500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-10 15:04:29] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"CoTrimoxazole Syp (LTrim)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","selling_price":"4500.00","sku":"PRD-00908","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"2350.00","last_purchase_date":"2026-06-10 15:04:29"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-10 15:04:29] production.INFO: Product Store - Product Created {"product_id":908,"product_name":"CoTrimoxazole Syp (LTrim)","product_sku":"PRD-00908"} 
[2026-06-10 15:07:54] production.INFO: Stock Adjustment - Initial State {"product_id":"908","previous_quantity":"10.00","previous_selling_price":"4500.00","validated_data":{"product_id":"908","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":null,"new_expiry_date":"2026-06-10"}} 
[2026-06-10 15:07:54] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":908,"new_selling_price":"5000.00","current_stock":"10.00","changes_made":"Prices updated only"} 
[2026-06-10 15:20:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781097636240","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"5.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-09T13:33:02.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 15:20:37] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-10 15:20:37] production.INFO: Old stock: 5.00  
[2026-06-10 15:20:37] production.INFO: Quantity deducted: 1  
[2026-06-10 15:20:37] production.INFO: New stock: 4  
[2026-06-10 15:20:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781097636240"} 
[2026-06-10 16:00:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781100021456","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":2,"subtotal":5000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"47.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T08:40:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 16:00:21] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-10 16:00:21] production.INFO: Old stock: 47.00  
[2026-06-10 16:00:21] production.INFO: Quantity deducted: 2  
[2026-06-10 16:00:21] production.INFO: New stock: 45  
[2026-06-10 16:00:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781100021456"} 
[2026-06-10 16:40:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781102445861","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":842,"product_id":842,"name":"Cetirizine Hydrochloride 10mg(Unicet)","sku":"PRD-00842","price":"1000.00","selling_price":"1000.00","purchase_price":"300.00","quantity":1,"subtotal":1000,"product":{"id":842,"name":"Cetirizine Hydrochloride 10mg(Unicet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"300.00","last_purchase_price":"300.00","selling_price":"1000.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00842","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T08:21:35.000000Z","updated_at":"2026-04-18T08:21:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 16:40:47] production.INFO: Stock deduction for product: Cetirizine Hydrochloride 10mg(Unicet)  
[2026-06-10 16:40:47] production.INFO: Old stock: 50.00  
[2026-06-10 16:40:47] production.INFO: Quantity deducted: 1  
[2026-06-10 16:40:47] production.INFO: New stock: 49  
[2026-06-10 16:40:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781102445861"} 
[2026-06-10 16:46:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781102761619","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"51.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T11:50:42.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 16:46:03] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-10 16:46:03] production.INFO: Old stock: 51.00  
[2026-06-10 16:46:03] production.INFO: Quantity deducted: 1  
[2026-06-10 16:46:03] production.INFO: New stock: 50  
[2026-06-10 16:46:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781102761619"} 
[2026-06-10 16:55:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781103300445","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":717,"product_id":717,"name":"Telmisartan+Hctz(Tel-40) Tab","sku":"3354","price":"25000.00","selling_price":"25000.00","purchase_price":"12400.00","quantity":1,"subtotal":25000,"product":{"id":717,"name":"Telmisartan+Hctz(Tel-40) Tab","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"12400.00","last_purchase_price":null,"selling_price":"25000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3354","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-27T06:32:43.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 16:55:02] production.INFO: Stock deduction for product: Telmisartan+Hctz(Tel-40) Tab  
[2026-06-10 16:55:02] production.INFO: Old stock: 4.00  
[2026-06-10 16:55:02] production.INFO: Quantity deducted: 1  
[2026-06-10 16:55:02] production.INFO: New stock: 3  
[2026-06-10 16:55:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781103300445"} 
[2026-06-10 17:13:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781104421087","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":903,"product_id":903,"name":"Muco Asthalin","sku":"PRD-00903","price":"10500.00","selling_price":"10500.00","purchase_price":"5500.00","quantity":1,"subtotal":10500,"product":{"id":903,"name":"Muco Asthalin","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"10500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00903","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:52:22.000000Z","updated_at":"2026-06-03T10:53:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-10 17:13:41] production.INFO: Stock deduction for product: Muco Asthalin  
[2026-06-10 17:13:41] production.INFO: Old stock: 10.00  
[2026-06-10 17:13:41] production.INFO: Quantity deducted: 1  
[2026-06-10 17:13:41] production.INFO: New stock: 9  
[2026-06-10 17:13:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781104421087"} 
[2026-06-10 17:29:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781105352989","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":10,"subtotal":10000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"59.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-08T16:15:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 17:29:14] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-10 17:29:14] production.INFO: Old stock: 59.00  
[2026-06-10 17:29:14] production.INFO: Quantity deducted: 10  
[2026-06-10 17:29:14] production.INFO: New stock: 49  
[2026-06-10 17:29:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781105352989"} 
[2026-06-10 17:33:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781105629366","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":2,"subtotal":10000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T10:37:06.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-10 17:33:49] production.INFO: Stock deduction for product: PregStream  
[2026-06-10 17:33:49] production.INFO: Old stock: 13.00  
[2026-06-10 17:33:49] production.INFO: Quantity deducted: 2  
[2026-06-10 17:33:49] production.INFO: New stock: 11  
[2026-06-10 17:33:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781105629366"} 
[2026-06-10 17:43:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781106217106","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":511,"product_id":511,"name":"Lisinopril 10mg","sku":"3148","price":"5500.00","selling_price":"5500.00","purchase_price":"2950.00","quantity":1,"subtotal":5500,"product":{"id":511,"name":"Lisinopril 10mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3148","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:32:47.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 17:43:38] production.INFO: Stock deduction for product: Lisinopril 10mg  
[2026-06-10 17:43:38] production.INFO: Old stock: 9.00  
[2026-06-10 17:43:38] production.INFO: Quantity deducted: 1  
[2026-06-10 17:43:38] production.INFO: New stock: 8  
[2026-06-10 17:43:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781106217106"} 
[2026-06-10 17:44:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781106245873","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":61,"product_id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","sku":"0674","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":1,"subtotal":1500,"product":{"id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"35.00","product_type":"Single","tax":null,"sku":"0674","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-10T07:33:53.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 17:44:05] production.INFO: Stock deduction for product: AMLODIPINE 5MG (AMLODAWA) 10s  
[2026-06-10 17:44:05] production.INFO: Old stock: 32.00  
[2026-06-10 17:44:05] production.INFO: Quantity deducted: 1  
[2026-06-10 17:44:05] production.INFO: New stock: 31  
[2026-06-10 17:44:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781106245873"} 
[2026-06-10 17:45:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781106313333","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"80.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T09:44:44.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 17:45:13] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-10 17:45:13] production.INFO: Old stock: 80.00  
[2026-06-10 17:45:13] production.INFO: Quantity deducted: 1  
[2026-06-10 17:45:13] production.INFO: New stock: 79  
[2026-06-10 17:45:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781106313333"} 
[2026-06-10 18:17:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781108226503","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":2,"subtotal":2000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"126.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T12:47:43.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-10 18:17:06] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-10 18:17:06] production.INFO: Old stock: 126.00  
[2026-06-10 18:17:06] production.INFO: Quantity deducted: 2  
[2026-06-10 18:17:06] production.INFO: New stock: 124  
[2026-06-10 18:17:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781108226503"} 
[2026-06-10 19:00:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781110839847","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":100,"product_id":100,"name":"BECLOMIN CREAM, 30g","sku":"0696","price":"5500.00","selling_price":"5500.00","purchase_price":"2450.00","quantity":1,"subtotal":5500,"product":{"id":100,"name":"BECLOMIN CREAM, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0696","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-28T09:00:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":5000},{"method":"airtel_money","amount":500}]}} 
[2026-06-10 19:45:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781113532555","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"84.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T12:50:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 19:45:34] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-10 19:45:34] production.INFO: Old stock: 84.00  
[2026-06-10 19:45:34] production.INFO: Quantity deducted: 1  
[2026-06-10 19:45:34] production.INFO: New stock: 83  
[2026-06-10 19:45:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781113532555"} 
[2026-06-10 20:19:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781115550301","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":2,"subtotal":7000,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"18.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-03T13:46:59.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":763,"product_id":763,"name":"Water Plaster","sku":"3400","price":"200.00","selling_price":"200.00","purchase_price":"36.00","quantity":2,"subtotal":400,"product":{"id":763,"name":"Water Plaster","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"36.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"418.00","stock":"419.00","product_type":"Single","tax":null,"sku":"3400","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T14:37:04.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"61.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-09T18:26:22.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 20:19:12] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-06-10 20:19:12] production.INFO: Old stock: 18.00  
[2026-06-10 20:19:12] production.INFO: Quantity deducted: 2  
[2026-06-10 20:19:12] production.INFO: New stock: 16  
[2026-06-10 20:19:12] production.INFO: Stock deduction for product: Water Plaster  
[2026-06-10 20:19:12] production.INFO: Old stock: 418.00  
[2026-06-10 20:19:12] production.INFO: Quantity deducted: 2  
[2026-06-10 20:19:12] production.INFO: New stock: 416  
[2026-06-10 20:19:12] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-10 20:19:12] production.INFO: Old stock: 61.00  
[2026-06-10 20:19:12] production.INFO: Quantity deducted: 1  
[2026-06-10 20:19:12] production.INFO: New stock: 60  
[2026-06-10 20:19:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781115550301"} 
[2026-06-10 20:23:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781115813756","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"138.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T15:04:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-10 20:23:35] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-10 20:23:35] production.INFO: Old stock: 138.00  
[2026-06-10 20:23:35] production.INFO: Quantity deducted: 1  
[2026-06-10 20:23:35] production.INFO: New stock: 137  
[2026-06-10 20:23:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781115813756"} 
[2026-06-10 20:48:35] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781117314951","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":125,"product_id":125,"name":"BIO OIL 60ML","sku":"1017","price":"14000.00","selling_price":"14000.00","purchase_price":"8200.00","quantity":1,"subtotal":14000,"product":{"id":125,"name":"BIO OIL 60ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"8200.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1017","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-04-23T13:43:57.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":2,"subtotal":20000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"32.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-05T15:20:47.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":857,"product_id":857,"name":"Colgate Tooth Brush","sku":"PRD-00857","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":2,"subtotal":6000,"product":{"id":857,"name":"Colgate Tooth Brush","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00857","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:18:54.000000Z","updated_at":"2026-06-05T09:34:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-10 20:48:35] production.INFO: Stock deduction for product: BIO OIL 60ML  
[2026-06-10 20:48:35] production.INFO: Old stock: 2.00  
[2026-06-10 20:48:35] production.INFO: Quantity deducted: 1  
[2026-06-10 20:48:35] production.INFO: New stock: 1  
[2026-06-10 20:48:35] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-10 20:48:35] production.INFO: Old stock: 32.00  
[2026-06-10 20:48:35] production.INFO: Quantity deducted: 2  
[2026-06-10 20:48:35] production.INFO: New stock: 30  
[2026-06-10 20:48:35] production.INFO: Stock deduction for product: Colgate Tooth Brush  
[2026-06-10 20:48:35] production.INFO: Old stock: 6.00  
[2026-06-10 20:48:35] production.INFO: Quantity deducted: 2  
[2026-06-10 20:48:35] production.INFO: New stock: 4  
[2026-06-10 20:48:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781117314951"} 
[2026-06-10 21:11:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781118677211","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":126,"product_id":126,"name":"BIO OIL DRY SKIN GEL 100 ML","sku":"1023","price":"13500.00","selling_price":"13500.00","purchase_price":"7700.00","quantity":1,"subtotal":13500,"product":{"id":126,"name":"BIO OIL DRY SKIN GEL 100 ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"7700.00","last_purchase_price":null,"selling_price":"13500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1023","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-03-06T00:13:11.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":123,"product_id":123,"name":"BIO OIL 125ML","sku":"1018","price":"22000.00","selling_price":"22000.00","purchase_price":"13700.00","quantity":1,"subtotal":22000,"product":{"id":123,"name":"BIO OIL 125ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"13700.00","last_purchase_price":null,"selling_price":"22000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1018","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-08T09:18:54.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-10 21:11:19] production.INFO: Stock deduction for product: BIO OIL DRY SKIN GEL 100 ML  
[2026-06-10 21:11:19] production.INFO: Old stock: 3.00  
[2026-06-10 21:11:19] production.INFO: Quantity deducted: 1  
[2026-06-10 21:11:19] production.INFO: New stock: 2  
[2026-06-10 21:11:19] production.INFO: Stock deduction for product: BIO OIL 125ML  
[2026-06-10 21:11:19] production.INFO: Old stock: 1.00  
[2026-06-10 21:11:19] production.INFO: Quantity deducted: 1  
[2026-06-10 21:11:19] production.INFO: New stock: 0  
[2026-06-10 21:11:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781118677211"} 
[2026-06-11 08:50:45] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781160644112","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"92.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T11:59:49.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":2,"subtotal":5000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"45.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T14:00:21.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-11 08:50:45] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-11 08:50:45] production.INFO: Old stock: 92.00  
[2026-06-11 08:50:45] production.INFO: Quantity deducted: 1  
[2026-06-11 08:50:45] production.INFO: New stock: 91  
[2026-06-11 08:50:45] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-11 08:50:45] production.INFO: Old stock: 45.00  
[2026-06-11 08:50:45] production.INFO: Quantity deducted: 2  
[2026-06-11 08:50:45] production.INFO: New stock: 43  
[2026-06-11 08:50:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781160644112"} 
[2026-06-11 08:50:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781160654963","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"137.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T18:23:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 08:50:56] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-11 08:50:56] production.INFO: Old stock: 137.00  
[2026-06-11 08:50:56] production.INFO: Quantity deducted: 1  
[2026-06-11 08:50:56] production.INFO: New stock: 136  
[2026-06-11 08:50:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781160654963"} 
[2026-06-11 09:22:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781162567377","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":644,"product_id":644,"name":"POLYGEL SUSPENSION 200ML","sku":"3281","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":644,"name":"POLYGEL SUSPENSION 200ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T16:11:53.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 09:22:49] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 200ML  
[2026-06-11 09:22:49] production.INFO: Old stock: 8.00  
[2026-06-11 09:22:49] production.INFO: Quantity deducted: 1  
[2026-06-11 09:22:49] production.INFO: New stock: 7  
[2026-06-11 09:22:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781162567377"} 
[2026-06-11 09:23:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781162597180","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"60.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T18:19:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":4,"subtotal":2000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"232.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-20T10:52:57.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 09:23:18] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-11 09:23:18] production.INFO: Old stock: 60.00  
[2026-06-11 09:23:18] production.INFO: Quantity deducted: 1  
[2026-06-11 09:23:18] production.INFO: New stock: 59  
[2026-06-11 09:23:18] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-11 09:23:18] production.INFO: Old stock: 232.00  
[2026-06-11 09:23:18] production.INFO: Quantity deducted: 4  
[2026-06-11 09:23:18] production.INFO: New stock: 228  
[2026-06-11 09:23:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781162597180"} 
[2026-06-11 10:44:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781167457671","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":2,"subtotal":4000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"136.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T06:50:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 10:44:18] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-11 10:44:18] production.INFO: Old stock: 136.00  
[2026-06-11 10:44:18] production.INFO: Quantity deducted: 2  
[2026-06-11 10:44:18] production.INFO: New stock: 134  
[2026-06-11 10:44:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781167457671"} 
[2026-06-11 11:59:58] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781171996906","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"30.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T17:38:50.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"30.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-07T14:45:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 11:59:58] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-06-11 11:59:58] production.INFO: Old stock: 30.00  
[2026-06-11 11:59:58] production.INFO: Quantity deducted: 1  
[2026-06-11 11:59:58] production.INFO: New stock: 29  
[2026-06-11 11:59:58] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-11 11:59:58] production.INFO: Old stock: 30.00  
[2026-06-11 11:59:58] production.INFO: Quantity deducted: 1  
[2026-06-11 11:59:58] production.INFO: New stock: 29  
[2026-06-11 11:59:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781171996906"} 
[2026-06-11 12:38:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781174296367","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"83.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T17:45:34.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 12:38:17] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-11 12:38:17] production.INFO: Old stock: 83.00  
[2026-06-11 12:38:17] production.INFO: Quantity deducted: 1  
[2026-06-11 12:38:17] production.INFO: New stock: 82  
[2026-06-11 12:38:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781174296367"} 
[2026-06-11 13:16:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781176611860","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"245.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T07:34:17.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-11 13:16:51] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-11 13:16:51] production.INFO: Old stock: 245.00  
[2026-06-11 13:16:51] production.INFO: Quantity deducted: 4  
[2026-06-11 13:16:51] production.INFO: New stock: 241  
[2026-06-11 13:16:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781176611860"} 
[2026-06-11 13:53:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781178827875","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"45.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-06T18:00:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-01T15:35:23.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 13:53:48] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-11 13:53:48] production.INFO: Old stock: 45.00  
[2026-06-11 13:53:48] production.INFO: Quantity deducted: 1  
[2026-06-11 13:53:48] production.INFO: New stock: 44  
[2026-06-11 13:53:48] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-11 13:53:48] production.INFO: Old stock: 16.00  
[2026-06-11 13:53:48] production.INFO: Quantity deducted: 1  
[2026-06-11 13:53:48] production.INFO: New stock: 15  
[2026-06-11 13:53:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781178827875"} 
[2026-06-11 14:11:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781179888326","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":7,"subtotal":3500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"241.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T11:16:51.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 14:11:29] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-11 14:11:29] production.INFO: Old stock: 241.00  
[2026-06-11 14:11:29] production.INFO: Quantity deducted: 7  
[2026-06-11 14:11:29] production.INFO: New stock: 234  
[2026-06-11 14:11:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781179888326"} 
[2026-06-11 14:22:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781180524378","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"BENYLIN 4FLU-200ML","sku":"1246","price":"40000.00","selling_price":"40000.00","purchase_price":"21500.00","quantity":1,"subtotal":40000,"product":{"id":104,"name":"BENYLIN 4FLU-200ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"21500.00","last_purchase_price":null,"selling_price":"40000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1246","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-27T11:58:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":2,"subtotal":4000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"34.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T07:05:01.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 14:22:05] production.INFO: Stock deduction for product: BENYLIN 4FLU-200ML  
[2026-06-11 14:22:05] production.INFO: Old stock: 9.00  
[2026-06-11 14:22:05] production.INFO: Quantity deducted: 1  
[2026-06-11 14:22:05] production.INFO: New stock: 8  
[2026-06-11 14:22:05] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-11 14:22:05] production.INFO: Old stock: 34.00  
[2026-06-11 14:22:05] production.INFO: Quantity deducted: 2  
[2026-06-11 14:22:05] production.INFO: New stock: 32  
[2026-06-11 14:22:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781180524378"} 
[2026-06-11 14:30:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781181032376","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":474,"product_id":474,"name":"KAMAGRA ORAL JELLY 50mg","sku":"3111","price":"5000.00","selling_price":"5000.00","purchase_price":"2600.00","quantity":2,"subtotal":10000,"product":{"id":474,"name":"KAMAGRA ORAL JELLY 50mg","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3111","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-04-17T07:54:43.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 14:30:33] production.INFO: Stock deduction for product: KAMAGRA ORAL JELLY 50mg  
[2026-06-11 14:30:33] production.INFO: Old stock: 10.00  
[2026-06-11 14:30:33] production.INFO: Quantity deducted: 2  
[2026-06-11 14:30:33] production.INFO: New stock: 8  
[2026-06-11 14:30:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781181032376"} 
[2026-06-11 14:59:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781182751400","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"79.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T15:45:13.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 14:59:12] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-11 14:59:12] production.INFO: Old stock: 79.00  
[2026-06-11 14:59:12] production.INFO: Quantity deducted: 1  
[2026-06-11 14:59:12] production.INFO: New stock: 78  
[2026-06-11 14:59:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781182751400"} 
[2026-06-11 15:22:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781184158737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"78.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T12:59:12.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 15:22:40] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-11 15:22:40] production.INFO: Old stock: 78.00  
[2026-06-11 15:22:40] production.INFO: Quantity deducted: 1  
[2026-06-11 15:22:40] production.INFO: New stock: 77  
[2026-06-11 15:22:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781184158737"} 
[2026-06-11 15:54:56] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1781186096728","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":885,"product_id":885,"name":"Triphen 4 flu","sku":"PRD-00885","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":885,"name":"Triphen 4 flu","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"11000.00","last_purchase_price":"11000.00","selling_price":"22000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00885","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:35:55.000000Z","updated_at":"2026-06-07T11:38:15.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":42,"product_id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","sku":"0690","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"3.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0690","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-02T08:20:43.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":151,"product_id":151,"name":"CANDISTAT CREAM (Clotrimazole  1% w/w), 15g","sku":"0656","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":151,"name":"CANDISTAT CREAM (Clotrimazole  1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"23","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"6.00","stock":"6.00","product_type":"Single","tax":null,"sku":"0656","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-02T17:13:48.000000Z","brand":{"id":23,"name":"CATCHET","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"91.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-11T06:50:45.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":439,"product_id":439,"name":"HAND SANITIZER (HYGIENIX)400ML","sku":"3076","price":"10000.00","selling_price":"10000.00","purchase_price":"7800.00","quantity":1,"subtotal":10000,"product":{"id":439,"name":"HAND SANITIZER (HYGIENIX)400ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"7800.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3076","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-05T10:56:29.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":438,"product_id":438,"name":"HAND SANITIZER (HYGIENIX) 100ML","sku":"3075","price":"3500.00","selling_price":"3500.00","purchase_price":"2100.00","quantity":3,"subtotal":10500,"product":{"id":438,"name":"HAND SANITIZER (HYGIENIX) 100ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2100.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3075","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-15T05:00:31.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-11 15:54:56] production.INFO: Stock deduction for product: Triphen 4 flu  
[2026-06-11 15:54:56] production.INFO: Old stock: 1.00  
[2026-06-11 15:54:56] production.INFO: Quantity deducted: 1  
[2026-06-11 15:54:56] production.INFO: New stock: 0  
[2026-06-11 15:54:56] production.INFO: Stock deduction for product: AGYCIN (Azithromycin 40mg/ml Susp.), 15ml  
[2026-06-11 15:54:56] production.INFO: Old stock: 3.00  
[2026-06-11 15:54:56] production.INFO: Quantity deducted: 1  
[2026-06-11 15:54:56] production.INFO: New stock: 2  
[2026-06-11 15:54:56] production.INFO: Stock deduction for product: CANDISTAT CREAM (Clotrimazole  1% w/w), 15g  
[2026-06-11 15:54:56] production.INFO: Old stock: 6.00  
[2026-06-11 15:54:56] production.INFO: Quantity deducted: 1  
[2026-06-11 15:54:56] production.INFO: New stock: 5  
[2026-06-11 15:54:56] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-11 15:54:56] production.INFO: Old stock: 91.00  
[2026-06-11 15:54:56] production.INFO: Quantity deducted: 1  
[2026-06-11 15:54:56] production.INFO: New stock: 90  
[2026-06-11 15:54:56] production.INFO: Stock deduction for product: HAND SANITIZER (HYGIENIX)400ML  
[2026-06-11 15:54:56] production.INFO: Old stock: 3.00  
[2026-06-11 15:54:56] production.INFO: Quantity deducted: 1  
[2026-06-11 15:54:56] production.INFO: New stock: 2  
[2026-06-11 15:54:56] production.INFO: Stock deduction for product: HAND SANITIZER (HYGIENIX) 100ML  
[2026-06-11 15:54:56] production.INFO: Old stock: 5.00  
[2026-06-11 15:54:56] production.INFO: Quantity deducted: 3  
[2026-06-11 15:54:56] production.INFO: New stock: 2  
[2026-06-11 15:54:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781186096728"} 
[2026-06-11 16:05:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781186748973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":465,"product_id":465,"name":"IBUT-400 (Ibuprofen 400mg)","sku":"3102","price":"1000.00","selling_price":"1000.00","purchase_price":"525.00","quantity":1,"subtotal":1000,"product":{"id":465,"name":"IBUT-400 (Ibuprofen 400mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"525.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"2.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3102","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T18:26:22.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 16:05:49] production.INFO: Stock deduction for product: IBUT-400 (Ibuprofen 400mg)  
[2026-06-11 16:05:49] production.INFO: Old stock: 2.00  
[2026-06-11 16:05:49] production.INFO: Quantity deducted: 1  
[2026-06-11 16:05:49] production.INFO: New stock: 1  
[2026-06-11 16:05:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781186748973"} 
[2026-06-11 16:17:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781187475954","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"134.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T08:44:18.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 16:17:57] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-11 16:17:57] production.INFO: Old stock: 134.00  
[2026-06-11 16:17:57] production.INFO: Quantity deducted: 1  
[2026-06-11 16:17:57] production.INFO: New stock: 133  
[2026-06-11 16:17:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781187475954"} 
[2026-06-11 16:28:45] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781188125175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":192,"product_id":192,"name":"CLONEM (Clotrimazole Cream 1% w/w), 20g","sku":"1056","price":"3000.00","selling_price":"3000.00","purchase_price":"1200.00","quantity":1,"subtotal":3000,"product":{"id":192,"name":"CLONEM (Clotrimazole Cream 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"1056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-10T10:17:33.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":643,"product_id":643,"name":"POLYGEL SUSPENSION 100ML","sku":"3280","price":"6500.00","selling_price":"6500.00","purchase_price":"3500.00","quantity":1,"subtotal":6500,"product":{"id":643,"name":"POLYGEL SUSPENSION 100ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"8.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3280","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T15:22:50.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":4,"subtotal":6000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"24.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T08:54:11.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-11 16:28:45] production.INFO: Stock deduction for product: CLONEM (Clotrimazole Cream 1% w/w), 20g  
[2026-06-11 16:28:45] production.INFO: Old stock: 15.00  
[2026-06-11 16:28:45] production.INFO: Quantity deducted: 1  
[2026-06-11 16:28:45] production.INFO: New stock: 14  
[2026-06-11 16:28:45] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 100ML  
[2026-06-11 16:28:45] production.INFO: Old stock: 8.00  
[2026-06-11 16:28:45] production.INFO: Quantity deducted: 1  
[2026-06-11 16:28:45] production.INFO: New stock: 7  
[2026-06-11 16:28:45] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-11 16:28:45] production.INFO: Old stock: 24.00  
[2026-06-11 16:28:45] production.INFO: Quantity deducted: 4  
[2026-06-11 16:28:45] production.INFO: New stock: 20  
[2026-06-11 16:28:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781188125175"} 
[2026-06-11 16:48:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781189284865","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":651,"product_id":651,"name":"PREGABALINE 75MG(NERVILIN)","sku":"3288","price":"8000.00","selling_price":"8000.00","purchase_price":"2500.00","quantity":2,"subtotal":16000,"product":{"id":651,"name":"PREGABALINE 75MG(NERVILIN)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"9.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3288","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T07:35:28.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 16:48:05] production.INFO: Stock deduction for product: PREGABALINE 75MG(NERVILIN)  
[2026-06-11 16:48:05] production.INFO: Old stock: 9.00  
[2026-06-11 16:48:05] production.INFO: Quantity deducted: 2  
[2026-06-11 16:48:05] production.INFO: New stock: 7  
[2026-06-11 16:48:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781189284865"} 
[2026-06-11 17:06:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781190381548","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"BONNISAN","sku":"1052","price":"20000.00","selling_price":"20000.00","purchase_price":"10500.00","quantity":1,"subtotal":20000,"product":{"id":136,"name":"BONNISAN","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"10500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-04-13T08:36:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-11 17:06:22] production.INFO: Stock deduction for product: BONNISAN  
[2026-06-11 17:06:22] production.INFO: Old stock: 3.00  
[2026-06-11 17:06:22] production.INFO: Quantity deducted: 1  
[2026-06-11 17:06:22] production.INFO: New stock: 2  
[2026-06-11 17:06:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781190381548"} 
[2026-06-11 17:23:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781191421887","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"29.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T14:32:54.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-11 17:23:43] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-11 17:23:43] production.INFO: Old stock: 29.00  
[2026-06-11 17:23:43] production.INFO: Quantity deducted: 1  
[2026-06-11 17:23:43] production.INFO: New stock: 28  
[2026-06-11 17:23:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781191421887"} 
[2026-06-11 17:24:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781191479158","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"11.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-08T13:46:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 17:24:39] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-11 17:24:39] production.INFO: Old stock: 11.00  
[2026-06-11 17:24:39] production.INFO: Quantity deducted: 1  
[2026-06-11 17:24:39] production.INFO: New stock: 10  
[2026-06-11 17:24:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781191479158"} 
[2026-06-11 17:35:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781192102260","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"74.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-08T16:43:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 17:35:03] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-11 17:35:03] production.INFO: Old stock: 74.00  
[2026-06-11 17:35:03] production.INFO: Quantity deducted: 1  
[2026-06-11 17:35:03] production.INFO: New stock: 73  
[2026-06-11 17:35:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781192102260"} 
[2026-06-11 17:43:41] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781192620913","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":146,"product_id":146,"name":"Cafemol","sku":"1178","price":"400.00","selling_price":"400.00","purchase_price":"187.50","quantity":1,"subtotal":400,"product":{"id":146,"name":"Cafemol","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"187.50","last_purchase_price":null,"selling_price":"400.00","current_stock":"59.00","stock":"59.00","product_type":"Single","tax":null,"sku":"1178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-04-20T13:17:15.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"77.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T13:22:40.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 17:43:41] production.INFO: Stock deduction for product: Cafemol  
[2026-06-11 17:43:41] production.INFO: Old stock: 59.00  
[2026-06-11 17:43:41] production.INFO: Quantity deducted: 1  
[2026-06-11 17:43:41] production.INFO: New stock: 58  
[2026-06-11 17:43:41] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-11 17:43:41] production.INFO: Old stock: 77.00  
[2026-06-11 17:43:41] production.INFO: Quantity deducted: 1  
[2026-06-11 17:43:41] production.INFO: New stock: 76  
[2026-06-11 17:43:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781192620913"} 
[2026-06-11 18:11:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781194287540","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":748,"product_id":748,"name":"Vagid CL Pessary","sku":"3385","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":748,"name":"Vagid CL Pessary","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3385","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T14:16:08.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 18:11:27] production.INFO: Stock deduction for product: Vagid CL Pessary  
[2026-06-11 18:11:27] production.INFO: Old stock: 8.00  
[2026-06-11 18:11:27] production.INFO: Quantity deducted: 1  
[2026-06-11 18:11:27] production.INFO: New stock: 7  
[2026-06-11 18:11:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781194287540"} 
[2026-06-11 18:27:20] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1781195240644","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"53.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-10T10:52:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"59.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T07:23:18.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"5.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-08T12:33:35.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":477,"product_id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","sku":"3114","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3114","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-06T13:55:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":662,"product_id":662,"name":"QUADRAJEL, 15g","sku":"3299","price":"7000.00","selling_price":"7000.00","purchase_price":"2950.00","quantity":1,"subtotal":7000,"product":{"id":662,"name":"QUADRAJEL, 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"24.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3299","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-04T12:40:09.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 18:27:20] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-11 18:27:20] production.INFO: Old stock: 53.00  
[2026-06-11 18:27:20] production.INFO: Quantity deducted: 1  
[2026-06-11 18:27:20] production.INFO: New stock: 52  
[2026-06-11 18:27:20] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-11 18:27:20] production.INFO: Old stock: 59.00  
[2026-06-11 18:27:20] production.INFO: Quantity deducted: 1  
[2026-06-11 18:27:20] production.INFO: New stock: 58  
[2026-06-11 18:27:20] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-11 18:27:20] production.INFO: Old stock: 5.00  
[2026-06-11 18:27:20] production.INFO: Quantity deducted: 1  
[2026-06-11 18:27:20] production.INFO: New stock: 4  
[2026-06-11 18:27:20] production.INFO: Stock deduction for product: KEMOXYL (Amoxicillin Dry Suspension)  
[2026-06-11 18:27:20] production.INFO: Old stock: 2.00  
[2026-06-11 18:27:20] production.INFO: Quantity deducted: 1  
[2026-06-11 18:27:20] production.INFO: New stock: 1  
[2026-06-11 18:27:20] production.INFO: Stock deduction for product: QUADRAJEL, 15g  
[2026-06-11 18:27:20] production.INFO: Old stock: 24.00  
[2026-06-11 18:27:20] production.INFO: Quantity deducted: 1  
[2026-06-11 18:27:20] production.INFO: New stock: 23  
[2026-06-11 18:27:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781195240644"} 
[2026-06-11 18:38:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781195880209","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-08T17:17:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-11 18:38:01] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-11 18:38:01] production.INFO: Old stock: 15.00  
[2026-06-11 18:38:01] production.INFO: Quantity deducted: 1  
[2026-06-11 18:38:01] production.INFO: New stock: 14  
[2026-06-11 18:38:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781195880209"} 
[2026-06-11 18:38:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781195895977","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"50.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T14:46:03.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 18:38:16] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-11 18:38:16] production.INFO: Old stock: 50.00  
[2026-06-11 18:38:16] production.INFO: Quantity deducted: 1  
[2026-06-11 18:38:16] production.INFO: New stock: 49  
[2026-06-11 18:38:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781195895977"} 
[2026-06-11 19:56:44] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781200603508","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":548,"product_id":548,"name":"METFORMIN 500MG BGMET","sku":"3185","price":"1000.00","selling_price":"1000.00","purchase_price":"550.00","quantity":1,"subtotal":1000,"product":{"id":548,"name":"METFORMIN 500MG BGMET","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"3.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3185","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-29T11:38:05.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"171.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-07T06:32:37.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"62.00","stock":"62.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T10:40:10.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 19:56:44] production.INFO: Stock deduction for product: METFORMIN 500MG BGMET  
[2026-06-11 19:56:44] production.INFO: Old stock: 3.00  
[2026-06-11 19:56:44] production.INFO: Quantity deducted: 1  
[2026-06-11 19:56:44] production.INFO: New stock: 2  
[2026-06-11 19:56:44] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-11 19:56:44] production.INFO: Old stock: 171.00  
[2026-06-11 19:56:44] production.INFO: Quantity deducted: 1  
[2026-06-11 19:56:44] production.INFO: New stock: 170  
[2026-06-11 19:56:44] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-06-11 19:56:44] production.INFO: Old stock: 62.00  
[2026-06-11 19:56:44] production.INFO: Quantity deducted: 1  
[2026-06-11 19:56:44] production.INFO: New stock: 61  
[2026-06-11 19:56:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781200603508"} 
[2026-06-11 21:00:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781204444898","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"76.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T15:43:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 21:00:45] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-11 21:00:45] production.INFO: Old stock: 76.00  
[2026-06-11 21:00:45] production.INFO: Quantity deducted: 1  
[2026-06-11 21:00:45] production.INFO: New stock: 75  
[2026-06-11 21:00:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781204444898"} 
[2026-06-11 21:02:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781204544090","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"58.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T16:27:20.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-11 21:02:25] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-11 21:02:25] production.INFO: Old stock: 58.00  
[2026-06-11 21:02:25] production.INFO: Quantity deducted: 1  
[2026-06-11 21:02:25] production.INFO: New stock: 57  
[2026-06-11 21:02:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781204544090"} 
[2026-06-12 08:43:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781246590024","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":391,"product_id":391,"name":"FUNGIFEN (Clotrimazole Cream 1% w/w), 15g","sku":"3028","price":"3500.00","selling_price":"3500.00","purchase_price":"1770.00","quantity":1,"subtotal":3500,"product":{"id":391,"name":"FUNGIFEN (Clotrimazole Cream 1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"1770.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3028","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-28T09:27:29.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 08:43:10] production.INFO: Stock deduction for product: FUNGIFEN (Clotrimazole Cream 1% w/w), 15g  
[2026-06-12 08:43:10] production.INFO: Old stock: 9.00  
[2026-06-12 08:43:10] production.INFO: Quantity deducted: 1  
[2026-06-12 08:43:10] production.INFO: New stock: 8  
[2026-06-12 08:43:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781246590024"} 
[2026-06-12 08:51:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781247119166","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"234.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T12:11:29.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 08:51:59] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-12 08:51:59] production.INFO: Old stock: 234.00  
[2026-06-12 08:51:59] production.INFO: Quantity deducted: 2  
[2026-06-12 08:51:59] production.INFO: New stock: 232  
[2026-06-12 08:51:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781247119166"} 
[2026-06-12 09:46:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781250367106","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":2,"subtotal":300,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"27.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T07:34:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 09:46:08] production.INFO: Stock deduction for product: Tumbocid  
[2026-06-12 09:46:08] production.INFO: Old stock: 27.00  
[2026-06-12 09:46:08] production.INFO: Quantity deducted: 2  
[2026-06-12 09:46:08] production.INFO: New stock: 25  
[2026-06-12 09:46:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781250367106"} 
[2026-06-12 09:56:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781251018231","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T15:41:04.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 09:56:58] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-12 09:56:58] production.INFO: Old stock: 10.00  
[2026-06-12 09:56:58] production.INFO: Quantity deducted: 1  
[2026-06-12 09:56:58] production.INFO: New stock: 9  
[2026-06-12 09:56:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781251018231"} 
[2026-06-12 10:18:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781252313755","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3500.00","selling_price":"3500.00","purchase_price":"1560.00","quantity":1,"subtotal":3500,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"21.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T10:32:44.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-12 10:18:35] production.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-06-12 10:18:35] production.INFO: Old stock: 21.00  
[2026-06-12 10:18:35] production.INFO: Quantity deducted: 1  
[2026-06-12 10:18:35] production.INFO: New stock: 20  
[2026-06-12 10:18:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781252313755"} 
[2026-06-12 10:42:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781253769222","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"4.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-09T13:09:39.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 10:42:51] production.INFO: Stock deduction for product: Iduplus  
[2026-06-12 10:42:51] production.INFO: Old stock: 4.00  
[2026-06-12 10:42:51] production.INFO: Quantity deducted: 1  
[2026-06-12 10:42:51] production.INFO: New stock: 3  
[2026-06-12 10:42:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781253769222"} 
[2026-06-12 11:19:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781255971846","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":2,"subtotal":1600,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"35.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-10T06:13:03.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:19:31] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-06-12 11:19:31] production.INFO: Old stock: 35.00  
[2026-06-12 11:19:31] production.INFO: Quantity deducted: 2  
[2026-06-12 11:19:31] production.INFO: New stock: 33  
[2026-06-12 11:19:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781255971846"} 
[2026-06-12 11:25:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781256350844","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":282,"product_id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","sku":"0800","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"13.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0800","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-10T08:49:50.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:25:52] production.INFO: Stock deduction for product: ENALAPRIL MALEATA TABLETS 5MG  
[2026-06-12 11:25:52] production.INFO: Old stock: 13.00  
[2026-06-12 11:25:52] production.INFO: Quantity deducted: 2  
[2026-06-12 11:25:52] production.INFO: New stock: 11  
[2026-06-12 11:25:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781256350844"} 
[2026-06-12 11:26:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781256400732","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":3,"subtotal":4500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"20.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T14:28:45.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:26:40] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-12 11:26:40] production.INFO: Old stock: 20.00  
[2026-06-12 11:26:40] production.INFO: Quantity deducted: 3  
[2026-06-12 11:26:40] production.INFO: New stock: 17  
[2026-06-12 11:26:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781256400732"} 
[2026-06-12 11:27:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781256435916","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":707,"product_id":707,"name":"Stop Acid","sku":"3344","price":"500.00","selling_price":"500.00","purchase_price":"140.00","quantity":3,"subtotal":1500,"product":{"id":707,"name":"Stop Acid","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3344","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T02:48:24.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:27:16] production.INFO: Stock deduction for product: Stop Acid  
[2026-06-12 11:27:16] production.INFO: Old stock: 12.00  
[2026-06-12 11:27:16] production.INFO: Quantity deducted: 3  
[2026-06-12 11:27:16] production.INFO: New stock: 9  
[2026-06-12 11:27:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781256435916"} 
[2026-06-12 11:27:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781256474931","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"385.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T08:54:11.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:27:54] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-12 11:27:54] production.INFO: Old stock: 385.00  
[2026-06-12 11:27:54] production.INFO: Quantity deducted: 1  
[2026-06-12 11:27:54] production.INFO: New stock: 384  
[2026-06-12 11:27:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781256474931"} 
[2026-06-12 11:32:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781256777026","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"420.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T08:54:11.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:32:58] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-12 11:32:58] production.INFO: Old stock: 420.00  
[2026-06-12 11:32:58] production.INFO: Quantity deducted: 1  
[2026-06-12 11:32:58] production.INFO: New stock: 419  
[2026-06-12 11:32:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781256777026"} 
[2026-06-12 11:33:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781256822306","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-06-02T09:34:15.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 11:33:42] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-06-12 11:33:42] production.INFO: Old stock: 15.00  
[2026-06-12 11:33:42] production.INFO: Quantity deducted: 1  
[2026-06-12 11:33:42] production.INFO: New stock: 14  
[2026-06-12 11:33:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781256822306"} 
[2026-06-12 12:07:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781258827698","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":802,"product_id":802,"name":"Cotton 500g (One Wool)","sku":"1370","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":1,"subtotal":20000,"product":{"id":802,"name":"Cotton 500g (One Wool)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1370","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-03-06T01:58:30.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 12:07:09] production.INFO: Stock deduction for product: Cotton 500g (One Wool)  
[2026-06-12 12:07:09] production.INFO: Old stock: 1.00  
[2026-06-12 12:07:09] production.INFO: Quantity deducted: 1  
[2026-06-12 12:07:09] production.INFO: New stock: 0  
[2026-06-12 12:07:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781258827698"} 
[2026-06-12 12:07:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781258839084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"170.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-11T17:56:44.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 12:07:20] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-12 12:07:20] production.INFO: Old stock: 170.00  
[2026-06-12 12:07:20] production.INFO: Quantity deducted: 1  
[2026-06-12 12:07:20] production.INFO: New stock: 169  
[2026-06-12 12:07:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781258839084"} 
[2026-06-12 13:09:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781262591073","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"172.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T10:46:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 13:09:54] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-12 13:09:54] production.INFO: Old stock: 172.00  
[2026-06-12 13:09:54] production.INFO: Quantity deducted: 1  
[2026-06-12 13:09:54] production.INFO: New stock: 171  
[2026-06-12 13:09:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781262591073"} 
[2026-06-12 14:30:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781267406451","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":167,"product_id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","sku":"0729","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"55.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0729","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-04T12:40:31.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 14:30:08] production.INFO: Stock deduction for product: CETERIZINE Tablets 10MG (RINACET)  
[2026-06-12 14:30:08] production.INFO: Old stock: 55.00  
[2026-06-12 14:30:08] production.INFO: Quantity deducted: 2  
[2026-06-12 14:30:08] production.INFO: New stock: 53  
[2026-06-12 14:30:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781267406451"} 
[2026-06-12 14:31:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781267508626","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"44.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-11T11:53:48.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 14:31:51] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-12 14:31:51] production.INFO: Old stock: 44.00  
[2026-06-12 14:31:51] production.INFO: Quantity deducted: 1  
[2026-06-12 14:31:51] production.INFO: New stock: 43  
[2026-06-12 14:31:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781267508626"} 
[2026-06-12 14:33:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781267589007","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"39.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T17:44:49.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":31,"product_id":31,"name":"ACINET 625 TABLETS","sku":"0662","price":"9500.00","selling_price":"9500.00","purchase_price":"5150.00","quantity":1,"subtotal":9500,"product":{"id":31,"name":"ACINET 625 TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5150.00","last_purchase_price":null,"selling_price":"9500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0662","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T10:38:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":232,"product_id":232,"name":"DENTAMOL (Acetaminophen 500mg)","sku":"1095","price":"7000.00","selling_price":"7000.00","purchase_price":"2600.00","quantity":1,"subtotal":7000,"product":{"id":232,"name":"DENTAMOL (Acetaminophen 500mg)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"43","brand_id":"43","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"2.00","stock":"3.00","product_type":"Single","tax":null,"sku":"1095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-22T08:51:32.000000Z","brand":{"id":43,"name":"LABORATORY AND ALLIED","note":null,"created_at":null,"updated_at":null},"category":{"id":43,"name":"PAINKILLERS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-12 14:33:11] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-12 14:33:11] production.INFO: Old stock: 39.00  
[2026-06-12 14:33:11] production.INFO: Quantity deducted: 1  
[2026-06-12 14:33:11] production.INFO: New stock: 38  
[2026-06-12 14:33:11] production.INFO: Stock deduction for product: ACINET 625 TABLETS  
[2026-06-12 14:33:11] production.INFO: Old stock: 1.00  
[2026-06-12 14:33:11] production.INFO: Quantity deducted: 1  
[2026-06-12 14:33:11] production.INFO: New stock: 0  
[2026-06-12 14:33:11] production.INFO: Stock deduction for product: DENTAMOL (Acetaminophen 500mg)  
[2026-06-12 14:33:11] production.INFO: Old stock: 2.00  
[2026-06-12 14:33:11] production.INFO: Quantity deducted: 1  
[2026-06-12 14:33:11] production.INFO: New stock: 1  
[2026-06-12 14:33:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781267589007"} 
[2026-06-12 14:33:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781267627096","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"32.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T07:05:01.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 14:33:48] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-12 14:33:48] production.INFO: Old stock: 32.00  
[2026-06-12 14:33:48] production.INFO: Quantity deducted: 1  
[2026-06-12 14:33:48] production.INFO: New stock: 31  
[2026-06-12 14:33:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781267627096"} 
[2026-06-12 15:02:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781269368665","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"4.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T16:27:20.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 15:02:48] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-12 15:02:48] production.INFO: Old stock: 4.00  
[2026-06-12 15:02:48] production.INFO: Quantity deducted: 1  
[2026-06-12 15:02:48] production.INFO: New stock: 3  
[2026-06-12 15:02:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781269368665"} 
[2026-06-12 15:50:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781272216391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"186.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T16:33:53.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 15:50:16] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-12 15:50:16] production.INFO: Old stock: 186.00  
[2026-06-12 15:50:16] production.INFO: Quantity deducted: 2  
[2026-06-12 15:50:16] production.INFO: New stock: 184  
[2026-06-12 15:50:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781272216391"} 
[2026-06-12 16:02:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781272937020","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":422,"product_id":422,"name":"Glucowell Met 50/500","sku":"3059","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":2,"subtotal":20000,"product":{"id":422,"name":"Glucowell Met 50/500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3059","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-04","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-30T08:59:42.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"384.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-12T09:27:54.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 16:02:18] production.INFO: Stock deduction for product: Glucowell Met 50/500  
[2026-06-12 16:02:18] production.INFO: Old stock: 12.00  
[2026-06-12 16:02:18] production.INFO: Quantity deducted: 2  
[2026-06-12 16:02:18] production.INFO: New stock: 10  
[2026-06-12 16:02:18] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-12 16:02:18] production.INFO: Old stock: 384.00  
[2026-06-12 16:02:18] production.INFO: Quantity deducted: 1  
[2026-06-12 16:02:18] production.INFO: New stock: 383  
[2026-06-12 16:02:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781272937020"} 
[2026-06-12 16:05:43] production.INFO: Stock Adjustment - Initial State {"product_id":"137","previous_quantity":"0.00","previous_selling_price":"700.00","validated_data":{"product_id":"137","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-12"}} 
[2026-06-12 16:05:43] production.INFO: Stock Adjustment - After Quantity Save {"product_id":137,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-12 16:08:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781273329971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":4,"subtotal":2800,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-12T14:05:43.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 16:08:50] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-12 16:08:50] production.INFO: Old stock: 10.00  
[2026-06-12 16:08:50] production.INFO: Quantity deducted: 4  
[2026-06-12 16:08:50] production.INFO: New stock: 6  
[2026-06-12 16:08:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781273329971"} 
[2026-06-12 16:10:56] production.INFO: Product Store - Request Data {"all_data":{"_token":"frfdU2jinN7UBP7wMQxrPmHwDkwxWSL7xqzDoIx4","name":"Doxy cycline (Doxy Capsules)","sku":null,"category_id":"7","brand_id":"8","unit_id":"65","purchase_price":"1500.00","selling_price":"3000.00","description":null,"purchase_quantity":"19.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-12 16:10:56] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Doxy cycline (Doxy Capsules)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"19.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-12 16:10:56] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Doxy cycline (Doxy Capsules)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":"PRD-00909","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"19.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"19.00","last_purchase_price":"1500.00","last_purchase_date":"2026-06-12 16:10:56"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-12 16:10:56] production.INFO: Product Store - Product Created {"product_id":909,"product_name":"Doxy cycline (Doxy Capsules)","product_sku":"PRD-00909"} 
[2026-06-12 16:13:01] production.INFO: Stock Adjustment - Initial State {"product_id":"260","previous_quantity":"55.00","previous_selling_price":"2500.00","validated_data":{"product_id":"260","adjustment_type":"subtract","quantity":"19","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-12"}} 
[2026-06-12 16:13:01] production.INFO: Stock Adjustment - After Quantity Save {"product_id":260,"new_quantity":36.0,"current_stock":36.0,"changes_made":"Quantity adjusted"} 
[2026-06-12 16:28:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781274491967","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":20,"subtotal":8000,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"101.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-04T19:03:28.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 16:28:13] production.INFO: Stock deduction for product: HEDAX  
[2026-06-12 16:28:13] production.INFO: Old stock: 101.00  
[2026-06-12 16:28:13] production.INFO: Quantity deducted: 20  
[2026-06-12 16:28:13] production.INFO: New stock: 81  
[2026-06-12 16:28:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781274491967"} 
[2026-06-12 16:40:32] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781275231021","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"12.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T06:49:01.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"36.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-06-02T08:28:04.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 16:40:32] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-12 16:40:32] production.INFO: Old stock: 12.00  
[2026-06-12 16:40:32] production.INFO: Quantity deducted: 1  
[2026-06-12 16:40:32] production.INFO: New stock: 11  
[2026-06-12 16:40:32] production.INFO: Stock deduction for product: Active C  
[2026-06-12 16:40:32] production.INFO: Old stock: 36.00  
[2026-06-12 16:40:32] production.INFO: Quantity deducted: 1  
[2026-06-12 16:40:32] production.INFO: New stock: 35  
[2026-06-12 16:40:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781275231021"} 
[2026-06-12 16:59:51] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781276390112","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":81,"product_id":81,"name":"Ashton and pearsons","sku":"1039","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":10,"subtotal":20000,"product":{"id":81,"name":"Ashton and pearsons","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"32.00","stock":"45.00","product_type":"Single","tax":null,"sku":"1039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-22T08:41:43.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":136,"product_id":136,"name":"BONNISAN","sku":"1052","price":"20000.00","selling_price":"20000.00","purchase_price":"10500.00","quantity":1,"subtotal":20000,"product":{"id":136,"name":"BONNISAN","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"10500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-11T15:06:22.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-12 16:59:51] production.INFO: Stock deduction for product: Ashton and pearsons  
[2026-06-12 16:59:51] production.INFO: Old stock: 32.00  
[2026-06-12 16:59:51] production.INFO: Quantity deducted: 10  
[2026-06-12 16:59:51] production.INFO: New stock: 22  
[2026-06-12 16:59:51] production.INFO: Stock deduction for product: BONNISAN  
[2026-06-12 16:59:51] production.INFO: Old stock: 2.00  
[2026-06-12 16:59:51] production.INFO: Quantity deducted: 1  
[2026-06-12 16:59:51] production.INFO: New stock: 1  
[2026-06-12 16:59:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781276390112"} 
[2026-06-12 17:15:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781277309509","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"57.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T19:02:25.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 17:15:11] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-12 17:15:11] production.INFO: Old stock: 57.00  
[2026-06-12 17:15:11] production.INFO: Quantity deducted: 1  
[2026-06-12 17:15:11] production.INFO: New stock: 56  
[2026-06-12 17:15:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781277309509"} 
[2026-06-12 17:49:32] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781279372118","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":882,"product_id":882,"name":"Ambcet","sku":"PRD-00882","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":882,"name":"Ambcet","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00882","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-20","created_at":"2026-05-20T05:16:10.000000Z","updated_at":"2026-06-02T09:49:45.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"75.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T19:00:45.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"73.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-11T15:35:03.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":1,"subtotal":1000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"49.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-10T15:29:14.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 17:49:32] production.INFO: Stock deduction for product: Ambcet  
[2026-06-12 17:49:32] production.INFO: Old stock: 9.00  
[2026-06-12 17:49:32] production.INFO: Quantity deducted: 1  
[2026-06-12 17:49:32] production.INFO: New stock: 8  
[2026-06-12 17:49:32] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-12 17:49:32] production.INFO: Old stock: 75.00  
[2026-06-12 17:49:32] production.INFO: Quantity deducted: 1  
[2026-06-12 17:49:32] production.INFO: New stock: 74  
[2026-06-12 17:49:32] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-12 17:49:32] production.INFO: Old stock: 73.00  
[2026-06-12 17:49:32] production.INFO: Quantity deducted: 1  
[2026-06-12 17:49:32] production.INFO: New stock: 72  
[2026-06-12 17:49:32] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-12 17:49:32] production.INFO: Old stock: 49.00  
[2026-06-12 17:49:32] production.INFO: Quantity deducted: 1  
[2026-06-12 17:49:32] production.INFO: New stock: 48  
[2026-06-12 17:49:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781279372118"} 
[2026-06-12 17:50:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781279412469","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":898,"product_id":898,"name":"Hydrocortisone Cream(Elycort)","sku":"PRD-00898","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":898,"name":"Hydrocortisone Cream(Elycort)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00898","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:20:42.000000Z","updated_at":"2026-06-04T15:24:45.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-12 17:50:12] production.INFO: Stock deduction for product: Hydrocortisone Cream(Elycort)  
[2026-06-12 17:50:12] production.INFO: Old stock: 4.00  
[2026-06-12 17:50:12] production.INFO: Quantity deducted: 1  
[2026-06-12 17:50:12] production.INFO: New stock: 3  
[2026-06-12 17:50:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781279412469"} 
[2026-06-12 17:55:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781279703781","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"43.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-12T12:31:51.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 17:55:03] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-12 17:55:03] production.INFO: Old stock: 43.00  
[2026-06-12 17:55:03] production.INFO: Quantity deducted: 1  
[2026-06-12 17:55:03] production.INFO: New stock: 42  
[2026-06-12 17:55:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781279703781"} 
[2026-06-12 18:00:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781280030732","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T07:07:39.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-12 18:00:31] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-12 18:00:31] production.INFO: Old stock: 48.00  
[2026-06-12 18:00:31] production.INFO: Quantity deducted: 1  
[2026-06-12 18:00:31] production.INFO: New stock: 47  
[2026-06-12 18:00:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781280030732"} 
[2026-06-12 18:06:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781280410498","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-06T17:36:41.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 18:06:52] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-06-12 18:06:52] production.INFO: Old stock: 13.00  
[2026-06-12 18:06:52] production.INFO: Quantity deducted: 1  
[2026-06-12 18:06:52] production.INFO: New stock: 12  
[2026-06-12 18:06:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781280410498"} 
[2026-06-12 18:08:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781280482098","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"74.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-12T15:49:32.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-12 18:08:02] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-12 18:08:02] production.INFO: Old stock: 74.00  
[2026-06-12 18:08:02] production.INFO: Quantity deducted: 1  
[2026-06-12 18:08:02] production.INFO: New stock: 73  
[2026-06-12 18:08:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781280482098"} 
[2026-06-12 18:08:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781280518866","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-03T16:31:03.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"184.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T13:50:16.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 18:08:38] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-12 18:08:38] production.INFO: Old stock: 10.00  
[2026-06-12 18:08:38] production.INFO: Quantity deducted: 1  
[2026-06-12 18:08:38] production.INFO: New stock: 9  
[2026-06-12 18:08:38] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-12 18:08:38] production.INFO: Old stock: 184.00  
[2026-06-12 18:08:38] production.INFO: Quantity deducted: 1  
[2026-06-12 18:08:38] production.INFO: New stock: 183  
[2026-06-12 18:08:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781280518866"} 
[2026-06-12 18:48:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781282928596","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"90.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-11T13:54:56.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 18:48:48] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-12 18:48:48] production.INFO: Old stock: 90.00  
[2026-06-12 18:48:48] production.INFO: Quantity deducted: 1  
[2026-06-12 18:48:48] production.INFO: New stock: 89  
[2026-06-12 18:48:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781282928596"} 
[2026-06-12 19:09:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781284184954","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"171.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T11:09:54.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 19:09:46] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-12 19:09:46] production.INFO: Old stock: 171.00  
[2026-06-12 19:09:46] production.INFO: Quantity deducted: 2  
[2026-06-12 19:09:46] production.INFO: New stock: 169  
[2026-06-12 19:09:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781284184954"} 
[2026-06-12 19:11:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781284261082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"82.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T10:38:17.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 19:11:01] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-12 19:11:01] production.INFO: Old stock: 82.00  
[2026-06-12 19:11:01] production.INFO: Quantity deducted: 1  
[2026-06-12 19:11:01] production.INFO: New stock: 81  
[2026-06-12 19:11:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781284261082"} 
[2026-06-12 19:32:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781285570732","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"Doxycycline Capsules (Doxyleb)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"Doxycycline Capsules (Doxyleb)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"36.00","stock":"36.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-12T14:13:01.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 19:32:51] production.INFO: Stock deduction for product: Doxycycline Capsules (Doxyleb)  
[2026-06-12 19:32:51] production.INFO: Old stock: 36.00  
[2026-06-12 19:32:51] production.INFO: Quantity deducted: 1  
[2026-06-12 19:32:51] production.INFO: New stock: 35  
[2026-06-12 19:32:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781285570732"} 
[2026-06-12 19:33:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781285598163","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"Doxycycline Capsules (Doxyleb)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"Doxycycline Capsules (Doxyleb)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"35.00","stock":"36.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-12T17:32:51.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-12 19:33:18] production.INFO: Stock deduction for product: Doxycycline Capsules (Doxyleb)  
[2026-06-12 19:33:18] production.INFO: Old stock: 35.00  
[2026-06-12 19:33:18] production.INFO: Quantity deducted: 1  
[2026-06-12 19:33:18] production.INFO: New stock: 34  
[2026-06-12 19:33:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781285598163"} 
[2026-06-12 20:27:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781288820964","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"34.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T07:11:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-12 20:27:01] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-12 20:27:01] production.INFO: Old stock: 34.00  
[2026-06-12 20:27:01] production.INFO: Quantity deducted: 1  
[2026-06-12 20:27:01] production.INFO: New stock: 33  
[2026-06-12 20:27:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781288820964"} 
[2026-06-12 21:05:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781291134362","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-11T11:53:48.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-07T10:26:39.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 21:05:35] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-12 21:05:35] production.INFO: Old stock: 15.00  
[2026-06-12 21:05:35] production.INFO: Quantity deducted: 1  
[2026-06-12 21:05:35] production.INFO: New stock: 14  
[2026-06-12 21:05:35] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-06-12 21:05:35] production.INFO: Old stock: 8.00  
[2026-06-12 21:05:35] production.INFO: Quantity deducted: 1  
[2026-06-12 21:05:35] production.INFO: New stock: 7  
[2026-06-12 21:05:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781291134362"} 
[2026-06-12 21:06:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781291203457","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"169.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T17:09:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-12 21:06:43] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-12 21:06:43] production.INFO: Old stock: 169.00  
[2026-06-12 21:06:43] production.INFO: Quantity deducted: 1  
[2026-06-12 21:06:43] production.INFO: New stock: 168  
[2026-06-12 21:06:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781291203457"} 
[2026-06-13 08:24:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781331846018","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"28.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-04T17:00:38.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 08:24:07] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-13 08:24:07] production.INFO: Old stock: 28.00  
[2026-06-13 08:24:07] production.INFO: Quantity deducted: 1  
[2026-06-13 08:24:07] production.INFO: New stock: 27  
[2026-06-13 08:24:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781331846018"} 
[2026-06-13 08:24:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781331885737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"419.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T09:32:58.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 08:24:46] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-13 08:24:46] production.INFO: Old stock: 419.00  
[2026-06-13 08:24:46] production.INFO: Quantity deducted: 2  
[2026-06-13 08:24:46] production.INFO: New stock: 417  
[2026-06-13 08:24:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781331885737"} 
[2026-06-13 08:55:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781333721257","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"35.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T17:44:49.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"89.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T16:48:48.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 08:55:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781333720425","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"35.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-09T17:44:49.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"89.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T16:48:48.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 08:55:21] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-13 08:55:21] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-13 08:55:21] production.INFO: Old stock: 35.00  
[2026-06-13 08:55:21] production.INFO: Old stock: 35.00  
[2026-06-13 08:55:21] production.INFO: Quantity deducted: 1  
[2026-06-13 08:55:21] production.INFO: Quantity deducted: 1  
[2026-06-13 08:55:21] production.INFO: New stock: 34  
[2026-06-13 08:55:21] production.INFO: New stock: 34  
[2026-06-13 08:55:21] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-13 08:55:21] production.INFO: Old stock: 89.00  
[2026-06-13 08:55:21] production.INFO: Quantity deducted: 1  
[2026-06-13 08:55:21] production.INFO: New stock: 88  
[2026-06-13 08:55:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781333721257"} 
[2026-06-13 08:55:21] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-13 08:55:21] production.INFO: Old stock: 88.00  
[2026-06-13 08:55:21] production.INFO: Quantity deducted: 1  
[2026-06-13 08:55:21] production.INFO: New stock: 87  
[2026-06-13 08:55:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781333720425"} 
[2026-06-13 09:00:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781334007544","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":4,"subtotal":2000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"228.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T07:23:18.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 09:00:09] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-13 09:00:09] production.INFO: Old stock: 228.00  
[2026-06-13 09:00:09] production.INFO: Quantity deducted: 4  
[2026-06-13 09:00:09] production.INFO: New stock: 224  
[2026-06-13 09:00:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781334007544"} 
[2026-06-13 09:04:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781334265535","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"27.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T06:24:07.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":3000},{"method":"airtel_money","amount":500}]}} 
[2026-06-13 09:39:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781336383924","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":226,"product_id":226,"name":"DEMONA (DEXAMETHASONE) EYE DROPS 5ML","sku":"0773","price":"3000.00","selling_price":"3000.00","purchase_price":"1200.00","quantity":1,"subtotal":3000,"product":{"id":226,"name":"DEMONA (DEXAMETHASONE) EYE DROPS 5ML","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"33","brand_id":"9","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0773","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":33,"name":"EYE DROP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 09:39:44] production.INFO: Stock deduction for product: DEMONA (DEXAMETHASONE) EYE DROPS 5ML  
[2026-06-13 09:39:44] production.INFO: Old stock: 11.00  
[2026-06-13 09:39:44] production.INFO: Quantity deducted: 1  
[2026-06-13 09:39:44] production.INFO: New stock: 10  
[2026-06-13 09:39:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781336383924"} 
[2026-06-13 10:01:44] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781337702966","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"42.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-12T15:55:03.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"30.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-10T18:48:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"17.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T09:26:40.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-13 10:01:44] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-13 10:01:44] production.INFO: Old stock: 42.00  
[2026-06-13 10:01:44] production.INFO: Quantity deducted: 1  
[2026-06-13 10:01:44] production.INFO: New stock: 41  
[2026-06-13 10:01:44] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-13 10:01:44] production.INFO: Old stock: 30.00  
[2026-06-13 10:01:44] production.INFO: Quantity deducted: 1  
[2026-06-13 10:01:44] production.INFO: New stock: 29  
[2026-06-13 10:01:44] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-13 10:01:44] production.INFO: Old stock: 17.00  
[2026-06-13 10:01:44] production.INFO: Quantity deducted: 1  
[2026-06-13 10:01:44] production.INFO: New stock: 16  
[2026-06-13 10:01:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781337702966"} 
[2026-06-13 10:01:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781337716878","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"33.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T18:27:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 10:01:57] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-13 10:01:57] production.INFO: Old stock: 33.00  
[2026-06-13 10:01:57] production.INFO: Quantity deducted: 1  
[2026-06-13 10:01:57] production.INFO: New stock: 32  
[2026-06-13 10:01:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781337716878"} 
[2026-06-13 10:28:08] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781339287841","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-06T10:48:25.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"183.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T16:08:38.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 10:28:08] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-06-13 10:28:08] production.INFO: Old stock: 11.00  
[2026-06-13 10:28:08] production.INFO: Quantity deducted: 1  
[2026-06-13 10:28:08] production.INFO: New stock: 10  
[2026-06-13 10:28:08] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-13 10:28:08] production.INFO: Old stock: 183.00  
[2026-06-13 10:28:08] production.INFO: Quantity deducted: 1  
[2026-06-13 10:28:08] production.INFO: New stock: 182  
[2026-06-13 10:28:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781339287841"} 
[2026-06-13 10:48:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781340514689","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":212,"product_id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","sku":"0732","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"5.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0732","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-01T09:49:48.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 10:48:35] production.INFO: Stock deduction for product: DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml  
[2026-06-13 10:48:35] production.INFO: Old stock: 5.00  
[2026-06-13 10:48:35] production.INFO: Quantity deducted: 1  
[2026-06-13 10:48:35] production.INFO: New stock: 4  
[2026-06-13 10:48:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781340514689"} 
[2026-06-13 10:57:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781341028655","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":64,"product_id":64,"name":"Amlozaar","sku":"1383","price":"20000.00","selling_price":"20000.00","purchase_price":"10233.00","quantity":1,"subtotal":20000,"product":{"id":64,"name":"Amlozaar","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"10233.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1383","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-04-24T02:48:56.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 10:57:10] production.INFO: Stock deduction for product: Amlozaar  
[2026-06-13 10:57:10] production.INFO: Old stock: 2.00  
[2026-06-13 10:57:10] production.INFO: Quantity deducted: 1  
[2026-06-13 10:57:10] production.INFO: New stock: 1  
[2026-06-13 10:57:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781341028655"} 
[2026-06-13 11:06:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781341573948","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"168.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T19:06:43.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 11:06:15] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-13 11:06:15] production.INFO: Old stock: 168.00  
[2026-06-13 11:06:15] production.INFO: Quantity deducted: 1  
[2026-06-13 11:06:15] production.INFO: New stock: 167  
[2026-06-13 11:06:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781341573948"} 
[2026-06-13 11:06:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781341595516","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"73.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-12T17:12:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 11:06:35] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-13 11:06:35] production.INFO: Old stock: 73.00  
[2026-06-13 11:06:35] production.INFO: Quantity deducted: 1  
[2026-06-13 11:06:35] production.INFO: New stock: 72  
[2026-06-13 11:06:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781341595516"} 
[2026-06-13 11:44:35] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781343873313","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":539,"product_id":539,"name":"Malaria Test Kit (Antigen Test)","sku":"3176","price":"10000.00","selling_price":"10000.00","purchase_price":"5500.00","quantity":1,"subtotal":10000,"product":{"id":539,"name":"Malaria Test Kit (Antigen Test)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3176","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T11:55:29.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":291,"product_id":291,"name":"EROCIN DRY MIXTURE (Erythromycin Oral Suspension)","sku":"1060","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":291,"name":"EROCIN DRY MIXTURE (Erythromycin Oral Suspension)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1060","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-03-06T00:50:59.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":608,"product_id":608,"name":"Ondansetrun (Emitino)","sku":"3245","price":"5000.00","selling_price":"5000.00","purchase_price":"2300.00","quantity":1,"subtotal":5000,"product":{"id":608,"name":"Ondansetrun (Emitino)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"2300.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3245","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-28T03:28:47.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T13:02:48.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-13 11:44:35] production.INFO: Stock deduction for product: Malaria Test Kit (Antigen Test)  
[2026-06-13 11:44:35] production.INFO: Old stock: 10.00  
[2026-06-13 11:44:35] production.INFO: Quantity deducted: 1  
[2026-06-13 11:44:35] production.INFO: New stock: 9  
[2026-06-13 11:44:35] production.INFO: Stock deduction for product: EROCIN DRY MIXTURE (Erythromycin Oral Suspension)  
[2026-06-13 11:44:35] production.INFO: Old stock: 9.00  
[2026-06-13 11:44:35] production.INFO: Quantity deducted: 1  
[2026-06-13 11:44:35] production.INFO: New stock: 8  
[2026-06-13 11:44:35] production.INFO: Stock deduction for product: Ondansetrun (Emitino)  
[2026-06-13 11:44:35] production.INFO: Old stock: 13.00  
[2026-06-13 11:44:35] production.INFO: Quantity deducted: 1  
[2026-06-13 11:44:35] production.INFO: New stock: 12  
[2026-06-13 11:44:35] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-13 11:44:35] production.INFO: Old stock: 3.00  
[2026-06-13 11:44:35] production.INFO: Quantity deducted: 1  
[2026-06-13 11:44:35] production.INFO: New stock: 2  
[2026-06-13 11:44:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781343873313"} 
[2026-06-13 11:45:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781343901313","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"417.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T06:24:46.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 11:45:01] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-13 11:45:01] production.INFO: Old stock: 417.00  
[2026-06-13 11:45:01] production.INFO: Quantity deducted: 5  
[2026-06-13 11:45:01] production.INFO: New stock: 412  
[2026-06-13 11:45:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781343901313"} 
[2026-06-13 12:15:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781345743025","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"26.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T07:04:26.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 12:15:43] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-13 12:15:43] production.INFO: Old stock: 26.00  
[2026-06-13 12:15:43] production.INFO: Quantity deducted: 1  
[2026-06-13 12:15:43] production.INFO: New stock: 25  
[2026-06-13 12:15:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781345743025"} 
[2026-06-13 12:24:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781346269030","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-12T16:08:38.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 12:24:30] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-13 12:24:30] production.INFO: Old stock: 9.00  
[2026-06-13 12:24:30] production.INFO: Quantity deducted: 1  
[2026-06-13 12:24:30] production.INFO: New stock: 8  
[2026-06-13 12:24:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781346269030"} 
[2026-06-13 12:34:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781346861724","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":737,"product_id":737,"name":"Tripride 2","sku":"3374","price":"18500.00","selling_price":"18500.00","purchase_price":"9300.00","quantity":1,"subtotal":18500,"product":{"id":737,"name":"Tripride 2","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":null,"supplier_id":null,"purchase_price":"9300.00","last_purchase_price":null,"selling_price":"18500.00","current_stock":"37.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3374","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T09:20:28.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 12:34:23] production.INFO: Stock deduction for product: Tripride 2  
[2026-06-13 12:34:23] production.INFO: Old stock: 37.00  
[2026-06-13 12:34:23] production.INFO: Quantity deducted: 1  
[2026-06-13 12:34:23] production.INFO: New stock: 36  
[2026-06-13 12:34:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781346861724"} 
[2026-06-13 12:56:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781348200206","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"72.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T09:06:35.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 12:56:40] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-13 12:56:40] production.INFO: Old stock: 72.00  
[2026-06-13 12:56:40] production.INFO: Quantity deducted: 1  
[2026-06-13 12:56:40] production.INFO: New stock: 71  
[2026-06-13 12:56:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781348200206"} 
[2026-06-13 15:04:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781355886577","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"8.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-13T10:24:30.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 15:04:46] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-13 15:04:46] production.INFO: Old stock: 8.00  
[2026-06-13 15:04:46] production.INFO: Quantity deducted: 1  
[2026-06-13 15:04:46] production.INFO: New stock: 7  
[2026-06-13 15:04:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781355886577"} 
[2026-06-13 15:14:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781356459487","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":274,"product_id":274,"name":"ELAGRA 100mg Tablets","sku":"0794","price":"4000.00","selling_price":"4000.00","purchase_price":"1500.00","quantity":1,"subtotal":4000,"product":{"id":274,"name":"ELAGRA 100mg Tablets","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"36","brand_id":"28","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0794","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-05T17:33:14.000000Z","brand":{"id":28,"name":"CORAL LOBARATORIES","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 15:14:19] production.INFO: Stock deduction for product: ELAGRA 100mg Tablets  
[2026-06-13 15:14:19] production.INFO: Old stock: 19.00  
[2026-06-13 15:14:19] production.INFO: Quantity deducted: 1  
[2026-06-13 15:14:19] production.INFO: New stock: 18  
[2026-06-13 15:14:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781356459487"} 
[2026-06-13 15:32:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781357539170","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":891,"product_id":891,"name":"Dawacort Cream","sku":"PRD-00891","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":891,"name":"Dawacort Cream","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00891","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T14:02:14.000000Z","updated_at":"2026-05-27T07:34:09.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 15:32:19] production.INFO: Stock deduction for product: Dawacort Cream  
[2026-06-13 15:32:19] production.INFO: Old stock: 8.00  
[2026-06-13 15:32:19] production.INFO: Quantity deducted: 1  
[2026-06-13 15:32:19] production.INFO: New stock: 7  
[2026-06-13 15:32:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781357539170"} 
[2026-06-13 15:32:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781357560489","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"49.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T16:38:16.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 15:32:40] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-13 15:32:40] production.INFO: Old stock: 49.00  
[2026-06-13 15:32:40] production.INFO: Quantity deducted: 1  
[2026-06-13 15:32:40] production.INFO: New stock: 48  
[2026-06-13 15:32:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781357560489"} 
[2026-06-13 15:33:17] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781357597145","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"29.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-13T08:01:44.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"6.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-06-01T09:44:40.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 15:33:17] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-13 15:33:17] production.INFO: Old stock: 29.00  
[2026-06-13 15:33:17] production.INFO: Quantity deducted: 1  
[2026-06-13 15:33:17] production.INFO: New stock: 28  
[2026-06-13 15:33:17] production.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-06-13 15:33:17] production.INFO: Old stock: 6.00  
[2026-06-13 15:33:17] production.INFO: Quantity deducted: 1  
[2026-06-13 15:33:17] production.INFO: New stock: 5  
[2026-06-13 15:33:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781357597145"} 
[2026-06-13 16:18:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781360324005","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T14:35:19.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-06-12T09:33:42.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-13 16:18:47] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-13 16:18:47] production.INFO: Old stock: 7.00  
[2026-06-13 16:18:47] production.INFO: Quantity deducted: 1  
[2026-06-13 16:18:47] production.INFO: New stock: 6  
[2026-06-13 16:18:47] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-06-13 16:18:47] production.INFO: Old stock: 14.00  
[2026-06-13 16:18:47] production.INFO: Quantity deducted: 1  
[2026-06-13 16:18:47] production.INFO: New stock: 13  
[2026-06-13 16:18:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781360324005"} 
[2026-06-13 16:20:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781360433420","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"Doxycycline Capsules (Doxyleb)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":10,"subtotal":25000,"product":{"id":260,"name":"Doxycycline Capsules (Doxyleb)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"34.00","stock":"36.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-12T17:33:18.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-13 16:20:33] production.INFO: Stock deduction for product: Doxycycline Capsules (Doxyleb)  
[2026-06-13 16:20:33] production.INFO: Old stock: 34.00  
[2026-06-13 16:20:33] production.INFO: Quantity deducted: 10  
[2026-06-13 16:20:33] production.INFO: New stock: 24  
[2026-06-13 16:20:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781360433420"} 
[2026-06-13 16:39:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781361572943","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"38.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T12:33:11.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-13 16:39:33] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-13 16:39:33] production.INFO: Old stock: 38.00  
[2026-06-13 16:39:33] production.INFO: Quantity deducted: 1  
[2026-06-13 16:39:33] production.INFO: New stock: 37  
[2026-06-13 16:39:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781361572943"} 
[2026-06-13 16:56:55] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781362614002","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"34.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-08T10:00:54.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"383.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-12T14:02:18.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"412.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T09:45:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 16:56:55] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-13 16:56:55] production.INFO: Old stock: 34.00  
[2026-06-13 16:56:55] production.INFO: Quantity deducted: 1  
[2026-06-13 16:56:55] production.INFO: New stock: 33  
[2026-06-13 16:56:55] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-13 16:56:55] production.INFO: Old stock: 383.00  
[2026-06-13 16:56:55] production.INFO: Quantity deducted: 1  
[2026-06-13 16:56:55] production.INFO: New stock: 382  
[2026-06-13 16:56:55] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-13 16:56:55] production.INFO: Old stock: 412.00  
[2026-06-13 16:56:55] production.INFO: Quantity deducted: 1  
[2026-06-13 16:56:55] production.INFO: New stock: 411  
[2026-06-13 16:56:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781362614002"} 
[2026-06-13 17:32:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781364737036","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"35.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-13T06:56:11.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 17:32:18] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-13 17:32:18] production.INFO: Old stock: 35.00  
[2026-06-13 17:32:18] production.INFO: Quantity deducted: 1  
[2026-06-13 17:32:18] production.INFO: New stock: 34  
[2026-06-13 17:32:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781364737036"} 
[2026-06-13 17:32:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781364753209","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"119.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T15:38:09.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-13 17:32:34] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-13 17:32:34] production.INFO: Old stock: 119.00  
[2026-06-13 17:32:34] production.INFO: Quantity deducted: 1  
[2026-06-13 17:32:34] production.INFO: New stock: 118  
[2026-06-13 17:32:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781364753209"} 
[2026-06-13 17:33:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781364812066","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":897,"product_id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","sku":"PRD-00897","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00897","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:10:22.000000Z","updated_at":"2026-06-02T17:34:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 17:33:34] production.INFO: Stock deduction for product: Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL  
[2026-06-13 17:33:34] production.INFO: Old stock: 9.00  
[2026-06-13 17:33:34] production.INFO: Quantity deducted: 1  
[2026-06-13 17:33:34] production.INFO: New stock: 8  
[2026-06-13 17:33:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781364812066"} 
[2026-06-13 17:46:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781365581910","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":2,"subtotal":2000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"124.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T16:17:06.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-13 17:46:23] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-13 17:46:23] production.INFO: Old stock: 124.00  
[2026-06-13 17:46:23] production.INFO: Quantity deducted: 2  
[2026-06-13 17:46:23] production.INFO: New stock: 122  
[2026-06-13 17:46:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781365581910"} 
[2026-06-13 17:49:20] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781365759821","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T08:01:57.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":11,"subtotal":2200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"411.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T14:56:55.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"382.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T14:56:55.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 17:49:20] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-13 17:49:20] production.INFO: Old stock: 32.00  
[2026-06-13 17:49:20] production.INFO: Quantity deducted: 1  
[2026-06-13 17:49:20] production.INFO: New stock: 31  
[2026-06-13 17:49:20] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-13 17:49:20] production.INFO: Old stock: 411.00  
[2026-06-13 17:49:20] production.INFO: Quantity deducted: 11  
[2026-06-13 17:49:20] production.INFO: New stock: 400  
[2026-06-13 17:49:20] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-13 17:49:20] production.INFO: Old stock: 382.00  
[2026-06-13 17:49:20] production.INFO: Quantity deducted: 1  
[2026-06-13 17:49:20] production.INFO: New stock: 381  
[2026-06-13 17:49:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781365759821"} 
[2026-06-13 17:55:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781366119380","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"88.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T06:56:11.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 17:55:20] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-13 17:55:20] production.INFO: Old stock: 88.00  
[2026-06-13 17:55:20] production.INFO: Quantity deducted: 1  
[2026-06-13 17:55:20] production.INFO: New stock: 87  
[2026-06-13 17:55:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781366119380"} 
[2026-06-13 18:10:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781367046175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":902,"product_id":902,"name":"Chlorpromazine","sku":"PRD-00902","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":902,"name":"Chlorpromazine","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00902","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:47:02.000000Z","updated_at":"2026-06-03T10:47:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 18:10:46] production.INFO: Stock deduction for product: Chlorpromazine  
[2026-06-13 18:10:46] production.INFO: Old stock: 20.00  
[2026-06-13 18:10:46] production.INFO: Quantity deducted: 1  
[2026-06-13 18:10:46] production.INFO: New stock: 19  
[2026-06-13 18:10:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781367046175"} 
[2026-06-13 18:20:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781367623636","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":557,"product_id":557,"name":"METHYLATED SPIRIT 50ML","sku":"3194","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":557,"name":"METHYLATED SPIRIT 50ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"17.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3194","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-16T11:05:41.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 18:20:23] production.INFO: Stock deduction for product: METHYLATED SPIRIT 50ML  
[2026-06-13 18:20:23] production.INFO: Old stock: 17.00  
[2026-06-13 18:20:23] production.INFO: Quantity deducted: 1  
[2026-06-13 18:20:23] production.INFO: New stock: 16  
[2026-06-13 18:20:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781367623636"} 
[2026-06-13 18:39:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781368790167","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":604,"product_id":604,"name":"Omeshal Caps 20mg 10C","sku":"3241","price":"2000.00","selling_price":"2000.00","purchase_price":"1200.00","quantity":1,"subtotal":2000,"product":{"id":604,"name":"Omeshal Caps 20mg 10C","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"35","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3241","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-06T01:12:14.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 18:39:51] production.INFO: Stock deduction for product: Omeshal Caps 20mg 10C  
[2026-06-13 18:39:51] production.INFO: Old stock: 4.00  
[2026-06-13 18:39:51] production.INFO: Quantity deducted: 1  
[2026-06-13 18:39:51] production.INFO: New stock: 3  
[2026-06-13 18:39:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781368790167"} 
[2026-06-13 18:42:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781368934590","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":2,"subtotal":2000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"118.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T15:32:34.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 18:42:14] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-13 18:42:14] production.INFO: Old stock: 118.00  
[2026-06-13 18:42:14] production.INFO: Quantity deducted: 2  
[2026-06-13 18:42:14] production.INFO: New stock: 116  
[2026-06-13 18:42:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781368934590"} 
[2026-06-13 18:47:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781369277652","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"43.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T06:50:45.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 18:47:59] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-13 18:47:59] production.INFO: Old stock: 43.00  
[2026-06-13 18:47:59] production.INFO: Quantity deducted: 1  
[2026-06-13 18:47:59] production.INFO: New stock: 42  
[2026-06-13 18:47:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781369277652"} 
[2026-06-13 18:48:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781369292908","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":1,"subtotal":500,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"224.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T07:00:09.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 18:48:13] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-13 18:48:13] production.INFO: Old stock: 224.00  
[2026-06-13 18:48:13] production.INFO: Quantity deducted: 1  
[2026-06-13 18:48:13] production.INFO: New stock: 223  
[2026-06-13 18:48:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781369292908"} 
[2026-06-13 19:15:15] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781370913280","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":748,"product_id":748,"name":"Vagid CL Pessary","sku":"3385","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":748,"name":"Vagid CL Pessary","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3385","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T16:11:27.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"4.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T16:45:31.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 19:15:15] production.INFO: Stock deduction for product: Vagid CL Pessary  
[2026-06-13 19:15:15] production.INFO: Old stock: 7.00  
[2026-06-13 19:15:15] production.INFO: Quantity deducted: 1  
[2026-06-13 19:15:15] production.INFO: New stock: 6  
[2026-06-13 19:15:15] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-06-13 19:15:15] production.INFO: Old stock: 4.00  
[2026-06-13 19:15:15] production.INFO: Quantity deducted: 1  
[2026-06-13 19:15:15] production.INFO: New stock: 3  
[2026-06-13 19:15:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781370913280"} 
[2026-06-13 19:58:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781373531523","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"25.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T10:15:43.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 19:58:54] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-13 19:58:54] production.INFO: Old stock: 25.00  
[2026-06-13 19:58:54] production.INFO: Quantity deducted: 1  
[2026-06-13 19:58:54] production.INFO: New stock: 24  
[2026-06-13 19:58:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781373531523"} 
[2026-06-13 20:24:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781375076376","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"71.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T10:56:40.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-13 20:24:36] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-13 20:24:36] production.INFO: Old stock: 71.00  
[2026-06-13 20:24:36] production.INFO: Quantity deducted: 1  
[2026-06-13 20:24:36] production.INFO: New stock: 70  
[2026-06-13 20:24:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781375076376"} 
[2026-06-14 08:15:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781417740471","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"167.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-13T09:06:15.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 08:15:40] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-14 08:15:40] production.INFO: Old stock: 167.00  
[2026-06-14 08:15:40] production.INFO: Quantity deducted: 2  
[2026-06-14 08:15:40] production.INFO: New stock: 165  
[2026-06-14 08:15:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781417740471"} 
[2026-06-14 08:34:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781418863907","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"70.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T18:24:36.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 08:34:23] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 08:34:23] production.INFO: Old stock: 70.00  
[2026-06-14 08:34:23] production.INFO: Quantity deducted: 1  
[2026-06-14 08:34:23] production.INFO: New stock: 69  
[2026-06-14 08:34:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781418863907"} 
[2026-06-14 08:49:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781419746792","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T19:00:35.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"69.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T06:34:23.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 08:49:07] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-06-14 08:49:07] production.INFO: Old stock: 31.00  
[2026-06-14 08:49:07] production.INFO: Quantity deducted: 1  
[2026-06-14 08:49:07] production.INFO: New stock: 30  
[2026-06-14 08:49:07] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 08:49:07] production.INFO: Old stock: 69.00  
[2026-06-14 08:49:07] production.INFO: Quantity deducted: 1  
[2026-06-14 08:49:07] production.INFO: New stock: 68  
[2026-06-14 08:49:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781419746792"} 
[2026-06-14 08:56:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781420199615","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"23.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-10T10:29:57.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 08:56:39] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-14 08:56:39] production.INFO: Old stock: 23.00  
[2026-06-14 08:56:39] production.INFO: Quantity deducted: 2  
[2026-06-14 08:56:39] production.INFO: New stock: 21  
[2026-06-14 08:56:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781420199615"} 
[2026-06-14 09:00:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781420453237","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-12T19:05:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"400.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T15:49:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-14 09:00:52] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-14 09:00:52] production.INFO: Old stock: 14.00  
[2026-06-14 09:00:52] production.INFO: Quantity deducted: 1  
[2026-06-14 09:00:52] production.INFO: New stock: 13  
[2026-06-14 09:00:52] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-14 09:00:52] production.INFO: Old stock: 400.00  
[2026-06-14 09:00:52] production.INFO: Quantity deducted: 5  
[2026-06-14 09:00:52] production.INFO: New stock: 395  
[2026-06-14 09:00:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781420453237"} 
[2026-06-14 09:08:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781420910708","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"68.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T06:49:07.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 09:08:31] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 09:08:31] production.INFO: Old stock: 68.00  
[2026-06-14 09:08:31] production.INFO: Quantity deducted: 1  
[2026-06-14 09:08:31] production.INFO: New stock: 67  
[2026-06-14 09:08:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781420910708"} 
[2026-06-14 10:03:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781424211545","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-11T16:38:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-14 10:03:31] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-14 10:03:31] production.INFO: Old stock: 14.00  
[2026-06-14 10:03:31] production.INFO: Quantity deducted: 1  
[2026-06-14 10:03:31] production.INFO: New stock: 13  
[2026-06-14 10:03:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781424211545"} 
[2026-06-14 10:09:34] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781424575735","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"37.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T14:39:33.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"122.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T15:46:23.000000Z","brand":null,"category":null}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"52.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-11T16:27:20.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-14 10:09:34] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-14 10:09:34] production.INFO: Old stock: 37.00  
[2026-06-14 10:09:34] production.INFO: Quantity deducted: 1  
[2026-06-14 10:09:34] production.INFO: New stock: 36  
[2026-06-14 10:09:34] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-14 10:09:34] production.INFO: Old stock: 122.00  
[2026-06-14 10:09:34] production.INFO: Quantity deducted: 1  
[2026-06-14 10:09:34] production.INFO: New stock: 121  
[2026-06-14 10:09:34] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-14 10:09:34] production.INFO: Old stock: 52.00  
[2026-06-14 10:09:34] production.INFO: Quantity deducted: 1  
[2026-06-14 10:09:34] production.INFO: New stock: 51  
[2026-06-14 10:09:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781424575735"} 
[2026-06-14 10:39:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781426385801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"41.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-13T08:01:44.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-12T14:08:50.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-14 10:39:46] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-14 10:39:46] production.INFO: Old stock: 41.00  
[2026-06-14 10:39:46] production.INFO: Quantity deducted: 1  
[2026-06-14 10:39:46] production.INFO: New stock: 40  
[2026-06-14 10:39:46] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-14 10:39:46] production.INFO: Old stock: 6.00  
[2026-06-14 10:39:46] production.INFO: Quantity deducted: 1  
[2026-06-14 10:39:46] production.INFO: New stock: 5  
[2026-06-14 10:39:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781426385801"} 
[2026-06-14 11:00:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781427657805","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":95,"product_id":95,"name":"Bactoclav","sku":"1189","price":"9500.00","selling_price":"9500.00","purchase_price":"4900.00","quantity":1,"subtotal":9500,"product":{"id":95,"name":"Bactoclav","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4900.00","last_purchase_price":null,"selling_price":"9500.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-09T08:47:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-14 11:00:57] production.INFO: Stock deduction for product: Bactoclav  
[2026-06-14 11:00:57] production.INFO: Old stock: 12.00  
[2026-06-14 11:00:57] production.INFO: Quantity deducted: 1  
[2026-06-14 11:00:57] production.INFO: New stock: 11  
[2026-06-14 11:00:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781427657805"} 
[2026-06-14 11:12:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781428340650","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"62.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-10T09:33:41.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 11:12:20] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-14 11:12:20] production.INFO: Old stock: 62.00  
[2026-06-14 11:12:20] production.INFO: Quantity deducted: 1  
[2026-06-14 11:12:20] production.INFO: New stock: 61  
[2026-06-14 11:12:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781428340650"} 
[2026-06-14 11:13:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781428393658","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":430,"product_id":430,"name":"Grand pa","sku":"3067","price":"1000.00","selling_price":"1000.00","purchase_price":"526.00","quantity":5,"subtotal":5000,"product":{"id":430,"name":"Grand pa","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"526.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3067","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-07T18:11:34.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 11:13:12] production.INFO: Stock deduction for product: Grand pa  
[2026-06-14 11:13:12] production.INFO: Old stock: 14.00  
[2026-06-14 11:13:12] production.INFO: Quantity deducted: 5  
[2026-06-14 11:13:12] production.INFO: New stock: 9  
[2026-06-14 11:13:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781428393658"} 
[2026-06-14 12:34:03] production.INFO: Finalize sale attempt {"cart_items":7,"request_data":{"invoice_no":"INV-1781433244329","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":251,"product_id":251,"name":"Diclofenac Injection","sku":"1061","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":6,"subtotal":9000,"product":{"id":251,"name":"Diclofenac Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1061","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-19T12:27:52.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":152,"product_id":152,"name":"CAPLOFEN THERMAL GEL, 30g","sku":"0719","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":2,"subtotal":10000,"product":{"id":152,"name":"CAPLOFEN THERMAL GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0719","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-08T09:14:24.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":517,"product_id":517,"name":"LOFNAC H SPRAY 100ml","sku":"3154","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":1,"subtotal":20000,"product":{"id":517,"name":"LOFNAC H SPRAY 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3154","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-23T12:24:20.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T08:34:16.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":2,"subtotal":2000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"121.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T08:09:34.000000Z","brand":null,"category":null}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"36.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T08:09:34.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":6,"subtotal":3000,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"50.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-10T11:55:29.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: Diclofenac Injection  
[2026-06-14 12:34:04] production.INFO: Old stock: 6.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 6  
[2026-06-14 12:34:04] production.INFO: New stock: 0  
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: CAPLOFEN THERMAL GEL, 30g  
[2026-06-14 12:34:04] production.INFO: Old stock: 10.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 2  
[2026-06-14 12:34:04] production.INFO: New stock: 8  
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: LOFNAC H SPRAY 100ml  
[2026-06-14 12:34:04] production.INFO: Old stock: 7.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 1  
[2026-06-14 12:34:04] production.INFO: New stock: 6  
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-14 12:34:04] production.INFO: Old stock: 18.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 1  
[2026-06-14 12:34:04] production.INFO: New stock: 17  
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-14 12:34:04] production.INFO: Old stock: 121.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 2  
[2026-06-14 12:34:04] production.INFO: New stock: 119  
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-14 12:34:04] production.INFO: Old stock: 36.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 1  
[2026-06-14 12:34:04] production.INFO: New stock: 35  
[2026-06-14 12:34:04] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-14 12:34:04] production.INFO: Old stock: 50.00  
[2026-06-14 12:34:04] production.INFO: Quantity deducted: 6  
[2026-06-14 12:34:04] production.INFO: New stock: 44  
[2026-06-14 12:34:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781433244329"} 
[2026-06-14 12:45:50] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781433950695","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":71,"product_id":71,"name":"Antagit DS Gel 100ml","sku":"1184","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":71,"name":"Antagit DS Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1184","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T10:36:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-05T11:11:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"119.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:34:04.000000Z","brand":null,"category":null}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"35.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:34:04.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 12:45:50] production.INFO: Stock deduction for product: Antagit DS Gel 100ml  
[2026-06-14 12:45:50] production.INFO: Old stock: 14.00  
[2026-06-14 12:45:50] production.INFO: Quantity deducted: 1  
[2026-06-14 12:45:50] production.INFO: New stock: 13  
[2026-06-14 12:45:50] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-14 12:45:50] production.INFO: Old stock: 22.00  
[2026-06-14 12:45:50] production.INFO: Quantity deducted: 1  
[2026-06-14 12:45:50] production.INFO: New stock: 21  
[2026-06-14 12:45:50] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-14 12:45:50] production.INFO: Old stock: 119.00  
[2026-06-14 12:45:50] production.INFO: Quantity deducted: 1  
[2026-06-14 12:45:50] production.INFO: New stock: 118  
[2026-06-14 12:45:50] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-14 12:45:50] production.INFO: Old stock: 35.00  
[2026-06-14 12:45:50] production.INFO: Quantity deducted: 1  
[2026-06-14 12:45:50] production.INFO: New stock: 34  
[2026-06-14 12:45:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781433950695"} 
[2026-06-14 12:50:36] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781434237918","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":904,"product_id":904,"name":"Antagit  200 ml","sku":"PRD-00904","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":904,"name":"Antagit  200 ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"11000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00904","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-04","created_at":"2026-06-04T12:34:24.000000Z","updated_at":"2026-06-09T08:14:10.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-14T10:49:53.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"119.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:49:53.000000Z","brand":null,"category":null}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"35.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:49:53.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 12:50:36] production.INFO: Stock deduction for product: Antagit  200 ml  
[2026-06-14 12:50:36] production.INFO: Old stock: 9.00  
[2026-06-14 12:50:36] production.INFO: Quantity deducted: 1  
[2026-06-14 12:50:36] production.INFO: New stock: 8  
[2026-06-14 12:50:36] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-14 12:50:36] production.INFO: Old stock: 22.00  
[2026-06-14 12:50:36] production.INFO: Quantity deducted: 1  
[2026-06-14 12:50:36] production.INFO: New stock: 21  
[2026-06-14 12:50:36] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-14 12:50:36] production.INFO: Old stock: 119.00  
[2026-06-14 12:50:36] production.INFO: Quantity deducted: 1  
[2026-06-14 12:50:36] production.INFO: New stock: 118  
[2026-06-14 12:50:36] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-14 12:50:36] production.INFO: Old stock: 35.00  
[2026-06-14 12:50:36] production.INFO: Quantity deducted: 1  
[2026-06-14 12:50:36] production.INFO: New stock: 34  
[2026-06-14 12:50:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781434237918"} 
[2026-06-14 13:29:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781436541254","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"4000.00","selling_price":"4000.00","purchase_price":"1750.00","quantity":1,"subtotal":4000,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"4000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-10","last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-06-10T10:16:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 13:29:01] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-06-14 13:29:01] production.INFO: Old stock: 15.00  
[2026-06-14 13:29:01] production.INFO: Quantity deducted: 1  
[2026-06-14 13:29:01] production.INFO: New stock: 14  
[2026-06-14 13:29:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781436541254"} 
[2026-06-14 13:47:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781437640122","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":696,"product_id":696,"name":"SINURRHON SYRUP","sku":"3333","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":696,"name":"SINURRHON SYRUP","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3333","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-09T15:04:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":5,"subtotal":1500,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"381.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T15:49:20.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 13:47:19] production.INFO: Stock deduction for product: SINURRHON SYRUP  
[2026-06-14 13:47:19] production.INFO: Old stock: 4.00  
[2026-06-14 13:47:19] production.INFO: Quantity deducted: 1  
[2026-06-14 13:47:19] production.INFO: New stock: 3  
[2026-06-14 13:47:19] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-14 13:47:19] production.INFO: Old stock: 381.00  
[2026-06-14 13:47:19] production.INFO: Quantity deducted: 5  
[2026-06-14 13:47:19] production.INFO: New stock: 376  
[2026-06-14 13:47:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781437640122"} 
[2026-06-14 13:57:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781438228408","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":8,"subtotal":4000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"232.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T06:51:59.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 13:57:08] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-14 13:57:08] production.INFO: Old stock: 232.00  
[2026-06-14 13:57:08] production.INFO: Quantity deducted: 8  
[2026-06-14 13:57:08] production.INFO: New stock: 224  
[2026-06-14 13:57:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781438228408"} 
[2026-06-14 13:59:32] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781438373431","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"67.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T07:08:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"395.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T07:00:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 13:59:32] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 13:59:32] production.INFO: Old stock: 67.00  
[2026-06-14 13:59:32] production.INFO: Quantity deducted: 1  
[2026-06-14 13:59:32] production.INFO: New stock: 66  
[2026-06-14 13:59:32] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-14 13:59:32] production.INFO: Old stock: 395.00  
[2026-06-14 13:59:32] production.INFO: Quantity deducted: 2  
[2026-06-14 13:59:32] production.INFO: New stock: 393  
[2026-06-14 13:59:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781438373431"} 
[2026-06-14 14:27:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781440021930","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":807,"product_id":807,"name":"Crepe Bandage 10cm","sku":"1174","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":807,"name":"Crepe Bandage 10cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1174","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-04-15T04:37:32.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 14:27:02] production.INFO: Stock deduction for product: Crepe Bandage 10cm  
[2026-06-14 14:27:02] production.INFO: Old stock: 3.00  
[2026-06-14 14:27:02] production.INFO: Quantity deducted: 1  
[2026-06-14 14:27:02] production.INFO: New stock: 2  
[2026-06-14 14:27:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781440021930"} 
[2026-06-14 14:44:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781441045534","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"5.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-06-13T13:33:17.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"35.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-08T09:34:46.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 14:44:05] production.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-06-14 14:44:05] production.INFO: Old stock: 5.00  
[2026-06-14 14:44:05] production.INFO: Quantity deducted: 1  
[2026-06-14 14:44:05] production.INFO: New stock: 4  
[2026-06-14 14:44:05] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-14 14:44:05] production.INFO: Old stock: 35.00  
[2026-06-14 14:44:05] production.INFO: Quantity deducted: 1  
[2026-06-14 14:44:05] production.INFO: New stock: 34  
[2026-06-14 14:44:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781441045534"} 
[2026-06-14 14:45:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781441139414","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:34:04.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 14:45:39] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-14 14:45:39] production.INFO: Old stock: 17.00  
[2026-06-14 14:45:39] production.INFO: Quantity deducted: 1  
[2026-06-14 14:45:39] production.INFO: New stock: 16  
[2026-06-14 14:45:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781441139414"} 
[2026-06-14 14:48:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781441315925","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":152,"product_id":152,"name":"CAPLOFEN THERMAL GEL, 30g","sku":"0719","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":152,"name":"CAPLOFEN THERMAL GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0719","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-14T10:34:04.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 14:48:36] production.INFO: Stock deduction for product: CAPLOFEN THERMAL GEL, 30g  
[2026-06-14 14:48:36] production.INFO: Old stock: 8.00  
[2026-06-14 14:48:36] production.INFO: Quantity deducted: 1  
[2026-06-14 14:48:36] production.INFO: New stock: 7  
[2026-06-14 14:48:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781441315925"} 
[2026-06-14 15:54:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781445254520","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"6.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-02T14:40:11.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 15:54:14] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-14 15:54:14] production.INFO: Old stock: 6.00  
[2026-06-14 15:54:14] production.INFO: Quantity deducted: 1  
[2026-06-14 15:54:14] production.INFO: New stock: 5  
[2026-06-14 15:54:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781445254520"} 
[2026-06-14 16:02:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781445740878","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":253,"product_id":253,"name":"DIPROSON CREAM (Betamethasone 0.05% w/w), 15g","sku":"0782","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":253,"name":"DIPROSON CREAM (Betamethasone 0.05% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0782","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-03-26T03:31:26.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 16:02:21] production.INFO: Stock deduction for product: DIPROSON CREAM (Betamethasone 0.05% w/w), 15g  
[2026-06-14 16:02:21] production.INFO: Old stock: 3.00  
[2026-06-14 16:02:21] production.INFO: Quantity deducted: 1  
[2026-06-14 16:02:21] production.INFO: New stock: 2  
[2026-06-14 16:02:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781445740878"} 
[2026-06-14 16:04:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781445859150","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"376.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T11:47:19.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"393.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T11:59:32.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 16:04:19] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-14 16:04:19] production.INFO: Old stock: 376.00  
[2026-06-14 16:04:19] production.INFO: Quantity deducted: 1  
[2026-06-14 16:04:19] production.INFO: New stock: 375  
[2026-06-14 16:04:19] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-14 16:04:19] production.INFO: Old stock: 393.00  
[2026-06-14 16:04:19] production.INFO: Quantity deducted: 1  
[2026-06-14 16:04:19] production.INFO: New stock: 392  
[2026-06-14 16:04:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781445859150"} 
[2026-06-14 16:08:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781446107941","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"66.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T11:59:32.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 16:08:26] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 16:08:26] production.INFO: Old stock: 66.00  
[2026-06-14 16:08:26] production.INFO: Quantity deducted: 1  
[2026-06-14 16:08:26] production.INFO: New stock: 65  
[2026-06-14 16:08:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781446107941"} 
[2026-06-14 16:22:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781446931762","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-05-28T09:23:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 16:22:12] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-06-14 16:22:12] production.INFO: Old stock: 5.00  
[2026-06-14 16:22:12] production.INFO: Quantity deducted: 1  
[2026-06-14 16:22:12] production.INFO: New stock: 4  
[2026-06-14 16:22:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781446931762"} 
[2026-06-14 16:25:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781447109705","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"33.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-13T14:56:55.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 16:25:11] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-14 16:25:11] production.INFO: Old stock: 33.00  
[2026-06-14 16:25:11] production.INFO: Quantity deducted: 1  
[2026-06-14 16:25:11] production.INFO: New stock: 32  
[2026-06-14 16:25:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781447109705"} 
[2026-06-14 16:40:51] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781448053222","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"34.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-14T12:44:05.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"392.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T14:04:19.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 16:40:52] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-14 16:40:52] production.INFO: Old stock: 34.00  
[2026-06-14 16:40:52] production.INFO: Quantity deducted: 2  
[2026-06-14 16:40:52] production.INFO: New stock: 32  
[2026-06-14 16:40:52] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-14 16:40:52] production.INFO: Old stock: 392.00  
[2026-06-14 16:40:52] production.INFO: Quantity deducted: 1  
[2026-06-14 16:40:52] production.INFO: New stock: 391  
[2026-06-14 16:40:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781448053222"} 
[2026-06-14 16:46:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781448412165","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"224.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T11:57:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 16:46:52] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-14 16:46:52] production.INFO: Old stock: 224.00  
[2026-06-14 16:46:52] production.INFO: Quantity deducted: 4  
[2026-06-14 16:46:52] production.INFO: New stock: 220  
[2026-06-14 16:46:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781448412165"} 
[2026-06-14 17:07:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781449656827","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"118.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:50:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-14 17:07:38] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-14 17:07:38] production.INFO: Old stock: 118.00  
[2026-06-14 17:07:38] production.INFO: Quantity deducted: 1  
[2026-06-14 17:07:38] production.INFO: New stock: 117  
[2026-06-14 17:07:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781449656827"} 
[2026-06-14 17:26:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781450767767","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"65.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T14:08:26.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"391.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T14:40:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"375.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T14:04:19.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 17:26:09] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 17:26:09] production.INFO: Old stock: 65.00  
[2026-06-14 17:26:09] production.INFO: Quantity deducted: 1  
[2026-06-14 17:26:09] production.INFO: New stock: 64  
[2026-06-14 17:26:09] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-14 17:26:09] production.INFO: Old stock: 391.00  
[2026-06-14 17:26:09] production.INFO: Quantity deducted: 1  
[2026-06-14 17:26:09] production.INFO: New stock: 390  
[2026-06-14 17:26:09] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-14 17:26:09] production.INFO: Old stock: 375.00  
[2026-06-14 17:26:09] production.INFO: Quantity deducted: 1  
[2026-06-14 17:26:09] production.INFO: New stock: 374  
[2026-06-14 17:26:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781450767767"} 
[2026-06-14 17:37:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781451433797","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":1,"subtotal":3500,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"16.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-10T18:19:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":458,"product_id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","sku":"3095","price":"1500.00","selling_price":"1500.00","purchase_price":"760.00","quantity":1,"subtotal":1500,"product":{"id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-23T11:45:31.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 17:37:16] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-06-14 17:37:16] production.INFO: Old stock: 16.00  
[2026-06-14 17:37:16] production.INFO: Quantity deducted: 1  
[2026-06-14 17:37:16] production.INFO: New stock: 15  
[2026-06-14 17:37:16] production.INFO: Stock deduction for product: IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS  
[2026-06-14 17:37:16] production.INFO: Old stock: 28.00  
[2026-06-14 17:37:16] production.INFO: Quantity deducted: 1  
[2026-06-14 17:37:16] production.INFO: New stock: 27  
[2026-06-14 17:37:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781451433797"} 
[2026-06-14 17:48:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781452110523","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":523,"product_id":523,"name":"LONART DS","sku":"3160","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":523,"name":"LONART DS","business_location":"EDUC Pharmacy","unit_id":"63","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"17.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3160","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-09T11:14:42.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 17:48:31] production.INFO: Stock deduction for product: LONART DS  
[2026-06-14 17:48:31] production.INFO: Old stock: 17.00  
[2026-06-14 17:48:31] production.INFO: Quantity deducted: 1  
[2026-06-14 17:48:31] production.INFO: New stock: 16  
[2026-06-14 17:48:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781452110523"} 
[2026-06-14 18:00:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781452851240","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-14T08:03:31.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 18:00:52] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-14 18:00:52] production.INFO: Old stock: 13.00  
[2026-06-14 18:00:52] production.INFO: Quantity deducted: 1  
[2026-06-14 18:00:52] production.INFO: New stock: 12  
[2026-06-14 18:00:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781452851240"} 
[2026-06-14 18:20:14] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781454013557","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":810,"product_id":810,"name":"High Power Bangalala Powder","sku":"PRD-00810","price":"17000.00","selling_price":"17000.00","purchase_price":"8500.00","quantity":1,"subtotal":17000,"product":{"id":810,"name":"High Power Bangalala Powder","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"8500.00","last_purchase_price":"8500.00","selling_price":"17000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00810","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T10:21:54.000000Z","updated_at":"2026-03-14T10:21:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"116.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T16:42:14.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 18:20:14] production.INFO: Stock deduction for product: High Power Bangalala Powder  
[2026-06-14 18:20:14] production.INFO: Old stock: 1.00  
[2026-06-14 18:20:14] production.INFO: Quantity deducted: 1  
[2026-06-14 18:20:14] production.INFO: New stock: 0  
[2026-06-14 18:20:14] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-14 18:20:14] production.INFO: Old stock: 116.00  
[2026-06-14 18:20:14] production.INFO: Quantity deducted: 1  
[2026-06-14 18:20:14] production.INFO: New stock: 115  
[2026-06-14 18:20:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781454013557"} 
[2026-06-14 18:35:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781454937417","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"87.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T15:55:20.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 18:35:38] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-14 18:35:38] production.INFO: Old stock: 87.00  
[2026-06-14 18:35:38] production.INFO: Quantity deducted: 1  
[2026-06-14 18:35:38] production.INFO: New stock: 86  
[2026-06-14 18:35:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781454937417"} 
[2026-06-14 18:53:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781456037573","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-14T16:00:52.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 18:53:58] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-14 18:53:58] production.INFO: Old stock: 12.00  
[2026-06-14 18:53:58] production.INFO: Quantity deducted: 1  
[2026-06-14 18:53:58] production.INFO: New stock: 11  
[2026-06-14 18:53:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781456037573"} 
[2026-06-14 19:08:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781456880298","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"374.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T15:26:09.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 19:08:01] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-14 19:08:01] production.INFO: Old stock: 374.00  
[2026-06-14 19:08:01] production.INFO: Quantity deducted: 2  
[2026-06-14 19:08:01] production.INFO: New stock: 372  
[2026-06-14 19:08:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781456880298"} 
[2026-06-14 19:37:51] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781458670932","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"4.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-10T13:20:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":460,"product_id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","sku":"3097","price":"4500.00","selling_price":"4500.00","purchase_price":"1800.00","quantity":1,"subtotal":4500,"product":{"id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"10","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"6.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3097","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-01T09:56:59.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 19:37:51] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-14 19:37:51] production.INFO: Old stock: 4.00  
[2026-06-14 19:37:51] production.INFO: Quantity deducted: 1  
[2026-06-14 19:37:51] production.INFO: New stock: 3  
[2026-06-14 19:37:51] production.INFO: Stock deduction for product: IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml  
[2026-06-14 19:37:51] production.INFO: Old stock: 6.00  
[2026-06-14 19:37:51] production.INFO: Quantity deducted: 1  
[2026-06-14 19:37:51] production.INFO: New stock: 5  
[2026-06-14 19:37:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781458670932"} 
[2026-06-14 19:40:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781458822283","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-13T15:49:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 19:40:23] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-14 19:40:23] production.INFO: Old stock: 31.00  
[2026-06-14 19:40:23] production.INFO: Quantity deducted: 1  
[2026-06-14 19:40:23] production.INFO: New stock: 30  
[2026-06-14 19:40:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781458822283"} 
[2026-06-14 19:47:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781459250618","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":728,"product_id":728,"name":"Tranexamic Acid 500mg Tablet","sku":"3365","price":"14000.00","selling_price":"14000.00","purchase_price":"5700.00","quantity":1,"subtotal":14000,"product":{"id":728,"name":"Tranexamic Acid 500mg Tablet","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5700.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3365","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-28T08:03:32.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":10000},{"method":"airtel_money","amount":4000}]}} 
[2026-06-14 19:57:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781459875824","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":6,"subtotal":42000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"30.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-11T13:51:13.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-14 19:57:57] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-06-14 19:57:57] production.INFO: Old stock: 30.00  
[2026-06-14 19:57:57] production.INFO: Quantity deducted: 6  
[2026-06-14 19:57:57] production.INFO: New stock: 24  
[2026-06-14 19:57:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781459875824"} 
[2026-06-14 20:03:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781460226551","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":698,"product_id":698,"name":"Sodium Cromoglicate","sku":"3335","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":698,"name":"Sodium Cromoglicate","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3335","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T07:32:57.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 20:03:48] production.INFO: Stock deduction for product: Sodium Cromoglicate  
[2026-06-14 20:03:48] production.INFO: Old stock: 1.00  
[2026-06-14 20:03:48] production.INFO: Quantity deducted: 1  
[2026-06-14 20:03:48] production.INFO: New stock: 0  
[2026-06-14 20:03:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781460226551"} 
[2026-06-14 20:07:27] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781460447005","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-06-12T14:10:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"56.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T15:15:11.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":738,"product_id":738,"name":"TSEKETSEKE POWDER 100GM","sku":"3375","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":738,"name":"TSEKETSEKE POWDER 100GM","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3375","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-03-06T01:15:25.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-14 20:07:28] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-06-14 20:07:28] production.INFO: Old stock: 19.00  
[2026-06-14 20:07:28] production.INFO: Quantity deducted: 1  
[2026-06-14 20:07:28] production.INFO: New stock: 18  
[2026-06-14 20:07:28] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-14 20:07:28] production.INFO: Old stock: 56.00  
[2026-06-14 20:07:28] production.INFO: Quantity deducted: 1  
[2026-06-14 20:07:28] production.INFO: New stock: 55  
[2026-06-14 20:07:28] production.INFO: Stock deduction for product: TSEKETSEKE POWDER 100GM  
[2026-06-14 20:07:28] production.INFO: Old stock: 2.00  
[2026-06-14 20:07:28] production.INFO: Quantity deducted: 1  
[2026-06-14 20:07:28] production.INFO: New stock: 1  
[2026-06-14 20:07:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781460447005"} 
[2026-06-14 20:16:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781460992004","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"64.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T15:26:09.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 20:16:33] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-14 20:16:33] production.INFO: Old stock: 64.00  
[2026-06-14 20:16:33] production.INFO: Quantity deducted: 1  
[2026-06-14 20:16:33] production.INFO: New stock: 63  
[2026-06-14 20:16:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781460992004"} 
[2026-06-14 20:40:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781462456855","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"21.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T06:56:39.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-14 20:40:58] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-14 20:40:58] production.INFO: Old stock: 21.00  
[2026-06-14 20:40:58] production.INFO: Quantity deducted: 2  
[2026-06-14 20:40:58] production.INFO: New stock: 19  
[2026-06-14 20:40:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781462456855"} 
[2026-06-15 07:32:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781501544920","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"61.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-14T09:12:20.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-15 07:32:26] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-15 07:32:26] production.INFO: Old stock: 61.00  
[2026-06-15 07:32:26] production.INFO: Quantity deducted: 1  
[2026-06-15 07:32:26] production.INFO: New stock: 60  
[2026-06-15 07:32:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781501544920"} 
[2026-06-15 08:34:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781505275348","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"Doxycycline Capsules (Doxyleb)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"Doxycycline Capsules (Doxyleb)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"24.00","stock":"36.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-13T14:20:33.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 08:34:34] production.INFO: Stock deduction for product: Doxycycline Capsules (Doxyleb)  
[2026-06-15 08:34:34] production.INFO: Old stock: 24.00  
[2026-06-15 08:34:34] production.INFO: Quantity deducted: 1  
[2026-06-15 08:34:34] production.INFO: New stock: 23  
[2026-06-15 08:34:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781505275348"} 
[2026-06-15 08:35:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781505326876","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"86.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T16:35:38.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 08:35:26] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-15 08:35:26] production.INFO: Old stock: 86.00  
[2026-06-15 08:35:26] production.INFO: Quantity deducted: 1  
[2026-06-15 08:35:26] production.INFO: New stock: 85  
[2026-06-15 08:35:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781505326876"} 
[2026-06-15 08:39:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781505550787","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"51.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-14T08:09:34.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 08:39:11] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-15 08:39:11] production.INFO: Old stock: 51.00  
[2026-06-15 08:39:11] production.INFO: Quantity deducted: 1  
[2026-06-15 08:39:11] production.INFO: New stock: 50  
[2026-06-15 08:39:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781505550787"} 
[2026-06-15 08:52:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781506322144","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"3.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-13T17:15:15.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-15 08:52:02] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-06-15 08:52:02] production.INFO: Old stock: 3.00  
[2026-06-15 08:52:02] production.INFO: Quantity deducted: 1  
[2026-06-15 08:52:02] production.INFO: New stock: 2  
[2026-06-15 08:52:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781506322144"} 
[2026-06-15 09:07:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781507255492","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":220,"product_id":220,"name":"Dazel Kit","sku":"1281","price":"32000.00","selling_price":"32000.00","purchase_price":"15000.00","quantity":1,"subtotal":32000,"product":{"id":220,"name":"Dazel Kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"7","brand_id":"9","supplier_id":null,"purchase_price":"15000.00","last_purchase_price":null,"selling_price":"32000.00","current_stock":"8.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T14:16:53.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 09:07:36] production.INFO: Stock deduction for product: Dazel Kit  
[2026-06-15 09:07:36] production.INFO: Old stock: 8.00  
[2026-06-15 09:07:36] production.INFO: Quantity deducted: 1  
[2026-06-15 09:07:36] production.INFO: New stock: 7  
[2026-06-15 09:07:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781507255492"} 
[2026-06-15 09:08:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781507325619","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"60.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T05:32:26.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 09:08:44] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-15 09:08:44] production.INFO: Old stock: 60.00  
[2026-06-15 09:08:44] production.INFO: Quantity deducted: 1  
[2026-06-15 09:08:44] production.INFO: New stock: 59  
[2026-06-15 09:08:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781507325619"} 
[2026-06-15 09:27:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781508456127","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"32.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-14T14:25:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 09:27:37] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-15 09:27:37] production.INFO: Old stock: 32.00  
[2026-06-15 09:27:37] production.INFO: Quantity deducted: 1  
[2026-06-15 09:27:37] production.INFO: New stock: 31  
[2026-06-15 09:27:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781508456127"} 
[2026-06-15 10:07:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781510855829","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":260,"product_id":260,"name":"Doxycycline Capsules (Doxyleb)","sku":"1071","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":260,"name":"Doxycycline Capsules (Doxyleb)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"24.00","stock":"36.00","product_type":"Single","tax":null,"sku":"1071","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T08:05:58.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"86.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-15T08:06:23.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 10:07:35] production.INFO: Stock deduction for product: Doxycycline Capsules (Doxyleb)  
[2026-06-15 10:07:35] production.INFO: Old stock: 24.00  
[2026-06-15 10:07:35] production.INFO: Quantity deducted: 1  
[2026-06-15 10:07:35] production.INFO: New stock: 23  
[2026-06-15 10:07:35] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-15 10:07:35] production.INFO: Old stock: 86.00  
[2026-06-15 10:07:35] production.INFO: Quantity deducted: 1  
[2026-06-15 10:07:35] production.INFO: New stock: 85  
[2026-06-15 10:07:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781510855829"} 
[2026-06-15 11:01:33] production.INFO: Stock Adjustment - Initial State {"product_id":"251","previous_quantity":"0.00","previous_selling_price":"1500.00","validated_data":{"product_id":"251","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-15"}} 
[2026-06-15 11:01:33] production.INFO: Stock Adjustment - After Quantity Save {"product_id":251,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-06-15 11:11:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781514676500","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":251,"product_id":251,"name":"Diclofenac Injection","sku":"1061","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":251,"name":"Diclofenac Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"20.00","stock":"20.00","product_type":"Single","tax":null,"sku":"1061","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-15","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T09:01:33.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":1,"subtotal":500,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"41.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-19T12:27:52.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 11:11:16] production.INFO: Stock deduction for product: Diclofenac Injection  
[2026-06-15 11:11:16] production.INFO: Old stock: 20.00  
[2026-06-15 11:11:16] production.INFO: Quantity deducted: 1  
[2026-06-15 11:11:16] production.INFO: New stock: 19  
[2026-06-15 11:11:16] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-06-15 11:11:16] production.INFO: Old stock: 41.00  
[2026-06-15 11:11:16] production.INFO: Quantity deducted: 1  
[2026-06-15 11:11:16] production.INFO: New stock: 40  
[2026-06-15 11:11:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781514676500"} 
[2026-06-15 12:00:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781517629208","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":228,"product_id":228,"name":"DENK (Amlodipine 10mg)","sku":"1250","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":2,"subtotal":40000,"product":{"id":228,"name":"DENK (Amlodipine 10mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"18","brand_id":"9","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1250","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-04-18T07:38:21.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-15 12:00:29] production.INFO: Stock deduction for product: DENK (Amlodipine 10mg)  
[2026-06-15 12:00:29] production.INFO: Old stock: 11.00  
[2026-06-15 12:00:29] production.INFO: Quantity deducted: 2  
[2026-06-15 12:00:29] production.INFO: New stock: 9  
[2026-06-15 12:00:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781517629208"} 
[2026-06-15 12:33:58] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781519639303","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":667,"product_id":667,"name":"Relcer Gel 180ml","sku":"3304","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":667,"name":"Relcer Gel 180ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3304","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-16T04:54:13.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":404,"product_id":404,"name":"GAVISCON PEPPERMINT TABLETS","sku":"3041","price":"15000.00","selling_price":"15000.00","purchase_price":"8500.00","quantity":1,"subtotal":15000,"product":{"id":404,"name":"GAVISCON PEPPERMINT TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3041","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 12:33:58] production.INFO: Stock deduction for product: Relcer Gel 180ml  
[2026-06-15 12:33:58] production.INFO: Old stock: 4.00  
[2026-06-15 12:33:58] production.INFO: Quantity deducted: 1  
[2026-06-15 12:33:58] production.INFO: New stock: 3  
[2026-06-15 12:33:58] production.INFO: Stock deduction for product: GAVISCON PEPPERMINT TABLETS  
[2026-06-15 12:33:58] production.INFO: Old stock: 5.00  
[2026-06-15 12:33:58] production.INFO: Quantity deducted: 1  
[2026-06-15 12:33:58] production.INFO: New stock: 4  
[2026-06-15 12:33:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781519639303"} 
[2026-06-15 13:35:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781523334912","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"3.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-14T17:37:51.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":168,"product_id":168,"name":"CETLIN (Cetirizine Oral), 60ml","sku":"0728","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":168,"name":"CETLIN (Cetirizine Oral), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"22","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0728","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-09T15:03:09.000000Z","brand":{"id":22,"name":"Calcimin","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-15 13:35:35] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-15 13:35:35] production.INFO: Old stock: 3.00  
[2026-06-15 13:35:35] production.INFO: Quantity deducted: 1  
[2026-06-15 13:35:35] production.INFO: New stock: 2  
[2026-06-15 13:35:35] production.INFO: Stock deduction for product: CETLIN (Cetirizine Oral), 60ml  
[2026-06-15 13:35:35] production.INFO: Old stock: 4.00  
[2026-06-15 13:35:35] production.INFO: Quantity deducted: 1  
[2026-06-15 13:35:35] production.INFO: New stock: 3  
[2026-06-15 13:35:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781523334912"} 
[2026-06-15 14:53:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781528016572","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"55.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-14T18:07:28.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 14:53:37] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-15 14:53:37] production.INFO: Old stock: 55.00  
[2026-06-15 14:53:37] production.INFO: Quantity deducted: 1  
[2026-06-15 14:53:37] production.INFO: New stock: 54  
[2026-06-15 14:53:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781528016572"} 
[2026-06-15 15:28:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781530099426","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"165.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-14T06:15:40.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 15:28:20] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-15 15:28:20] production.INFO: Old stock: 165.00  
[2026-06-15 15:28:20] production.INFO: Quantity deducted: 1  
[2026-06-15 15:28:20] production.INFO: New stock: 164  
[2026-06-15 15:28:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781530099426"} 
[2026-06-15 15:37:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781530672592","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"85.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-15T08:07:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 15:37:52] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-15 15:37:52] production.INFO: Old stock: 85.00  
[2026-06-15 15:37:52] production.INFO: Quantity deducted: 1  
[2026-06-15 15:37:52] production.INFO: New stock: 84  
[2026-06-15 15:37:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781530672592"} 
[2026-06-15 16:00:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781531999255","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"38.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-27T09:29:18.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"63.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T18:16:33.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-15 16:00:00] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-06-15 16:00:00] production.INFO: Old stock: 38.00  
[2026-06-15 16:00:00] production.INFO: Quantity deducted: 1  
[2026-06-15 16:00:00] production.INFO: New stock: 37  
[2026-06-15 16:00:00] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-15 16:00:00] production.INFO: Old stock: 63.00  
[2026-06-15 16:00:00] production.INFO: Quantity deducted: 1  
[2026-06-15 16:00:00] production.INFO: New stock: 62  
[2026-06-15 16:00:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781531999255"} 
[2026-06-15 16:35:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781534102190","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":204,"product_id":204,"name":"DACOLD SYRUP (For Children), 100ml","sku":"0765","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":204,"name":"DACOLD SYRUP (For Children), 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0765","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-07T14:22:07.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 16:35:02] production.INFO: Stock deduction for product: DACOLD SYRUP (For Children), 100ml  
[2026-06-15 16:35:02] production.INFO: Old stock: 7.00  
[2026-06-15 16:35:02] production.INFO: Quantity deducted: 1  
[2026-06-15 16:35:02] production.INFO: New stock: 6  
[2026-06-15 16:35:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781534102190"} 
[2026-06-15 16:35:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781534116406","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-13T08:28:08.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 16:35:16] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-06-15 16:35:16] production.INFO: Old stock: 10.00  
[2026-06-15 16:35:16] production.INFO: Quantity deducted: 1  
[2026-06-15 16:35:16] production.INFO: New stock: 9  
[2026-06-15 16:35:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781534116406"} 
[2026-06-15 16:41:33] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781534492285","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"59.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T07:08:44.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":734,"product_id":734,"name":"Triphen Dry","sku":"3371","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":734,"name":"Triphen Dry","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3371","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-26T07:33:18.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":2,"subtotal":4000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"32.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T12:22:05.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 16:41:33] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-15 16:41:33] production.INFO: Old stock: 59.00  
[2026-06-15 16:41:33] production.INFO: Quantity deducted: 1  
[2026-06-15 16:41:33] production.INFO: New stock: 58  
[2026-06-15 16:41:33] production.INFO: Stock deduction for product: Triphen Dry  
[2026-06-15 16:41:33] production.INFO: Old stock: 4.00  
[2026-06-15 16:41:33] production.INFO: Quantity deducted: 1  
[2026-06-15 16:41:33] production.INFO: New stock: 3  
[2026-06-15 16:41:33] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-15 16:41:33] production.INFO: Old stock: 32.00  
[2026-06-15 16:41:33] production.INFO: Quantity deducted: 2  
[2026-06-15 16:41:33] production.INFO: New stock: 30  
[2026-06-15 16:41:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781534492285"} 
[2026-06-15 16:55:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781535315129","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"11.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T15:33:49.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 16:55:15] production.INFO: Stock deduction for product: PregStream  
[2026-06-15 16:55:15] production.INFO: Old stock: 11.00  
[2026-06-15 16:55:15] production.INFO: Quantity deducted: 1  
[2026-06-15 16:55:15] production.INFO: New stock: 10  
[2026-06-15 16:55:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781535315129"} 
[2026-06-15 17:05:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781535934055","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":398,"product_id":398,"name":"GACET-125 (Acetaminophen Suppository 125mg)","sku":"3035","price":"8000.00","selling_price":"8000.00","purchase_price":"4200.00","quantity":1,"subtotal":8000,"product":{"id":398,"name":"GACET-125 (Acetaminophen Suppository 125mg)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3035","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-04-04T08:13:07.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 17:05:35] production.INFO: Stock deduction for product: GACET-125 (Acetaminophen Suppository 125mg)  
[2026-06-15 17:05:35] production.INFO: Old stock: 4.00  
[2026-06-15 17:05:35] production.INFO: Quantity deducted: 1  
[2026-06-15 17:05:35] production.INFO: New stock: 3  
[2026-06-15 17:05:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781535934055"} 
[2026-06-15 17:24:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781537063354","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":458,"product_id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","sku":"3095","price":"1500.00","selling_price":"1500.00","purchase_price":"760.00","quantity":1,"subtotal":1500,"product":{"id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"27.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T15:37:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"72.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-12T17:12:38.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 17:24:25] production.INFO: Stock deduction for product: IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS  
[2026-06-15 17:24:25] production.INFO: Old stock: 27.00  
[2026-06-15 17:24:25] production.INFO: Quantity deducted: 1  
[2026-06-15 17:24:25] production.INFO: New stock: 26  
[2026-06-15 17:24:25] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-15 17:24:25] production.INFO: Old stock: 72.00  
[2026-06-15 17:24:25] production.INFO: Quantity deducted: 1  
[2026-06-15 17:24:25] production.INFO: New stock: 71  
[2026-06-15 17:24:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781537063354"} 
[2026-06-15 17:29:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781537381176","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"62.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T14:00:00.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 17:29:42] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-15 17:29:42] production.INFO: Old stock: 62.00  
[2026-06-15 17:29:42] production.INFO: Quantity deducted: 1  
[2026-06-15 17:29:42] production.INFO: New stock: 61  
[2026-06-15 17:29:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781537381176"} 
[2026-06-15 17:36:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781537774095","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":734,"product_id":734,"name":"Triphen Dry","sku":"3371","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":734,"name":"Triphen Dry","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"3.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3371","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T14:41:33.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 17:36:16] production.INFO: Stock deduction for product: Triphen Dry  
[2026-06-15 17:36:16] production.INFO: Old stock: 3.00  
[2026-06-15 17:36:16] production.INFO: Quantity deducted: 1  
[2026-06-15 17:36:16] production.INFO: New stock: 2  
[2026-06-15 17:36:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781537774095"} 
[2026-06-15 18:06:24] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781539582407","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"34.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-13T15:32:18.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-06-14T18:07:28.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":10,"subtotal":3000,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"372.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T17:08:01.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-15 18:06:24] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-15 18:06:24] production.INFO: Old stock: 34.00  
[2026-06-15 18:06:24] production.INFO: Quantity deducted: 1  
[2026-06-15 18:06:24] production.INFO: New stock: 33  
[2026-06-15 18:06:24] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-06-15 18:06:24] production.INFO: Old stock: 18.00  
[2026-06-15 18:06:24] production.INFO: Quantity deducted: 1  
[2026-06-15 18:06:24] production.INFO: New stock: 17  
[2026-06-15 18:06:24] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-15 18:06:24] production.INFO: Old stock: 372.00  
[2026-06-15 18:06:24] production.INFO: Quantity deducted: 10  
[2026-06-15 18:06:24] production.INFO: New stock: 362  
[2026-06-15 18:06:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781539582407"} 
[2026-06-15 18:09:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781539765542","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"61.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T15:29:42.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-15 18:09:26] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-15 18:09:26] production.INFO: Old stock: 61.00  
[2026-06-15 18:09:26] production.INFO: Quantity deducted: 1  
[2026-06-15 18:09:26] production.INFO: New stock: 60  
[2026-06-15 18:09:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781539765542"} 
[2026-06-15 18:11:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781539913837","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":659,"product_id":659,"name":"PROPRANOLOL 40MG","sku":"3296","price":"1000.00","selling_price":"1000.00","purchase_price":"409.00","quantity":1,"subtotal":1000,"product":{"id":659,"name":"PROPRANOLOL 40MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"409.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"82.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3296","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T14:32:54.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 18:11:54] production.INFO: Stock deduction for product: PROPRANOLOL 40MG  
[2026-06-15 18:11:54] production.INFO: Old stock: 82.00  
[2026-06-15 18:11:54] production.INFO: Quantity deducted: 1  
[2026-06-15 18:11:54] production.INFO: New stock: 81  
[2026-06-15 18:11:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781539913837"} 
[2026-06-15 18:32:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781541160088","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":282,"product_id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","sku":"0800","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":3,"subtotal":3000,"product":{"id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"11.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0800","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-12T09:34:12.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 18:32:41] production.INFO: Stock deduction for product: ENALAPRIL MALEATA TABLETS 5MG  
[2026-06-15 18:32:41] production.INFO: Old stock: 11.00  
[2026-06-15 18:32:41] production.INFO: Quantity deducted: 3  
[2026-06-15 18:32:41] production.INFO: New stock: 8  
[2026-06-15 18:32:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781541160088"} 
[2026-06-15 18:42:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781541746845","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"48.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T13:32:40.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 18:42:28] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-15 18:42:28] production.INFO: Old stock: 48.00  
[2026-06-15 18:42:28] production.INFO: Quantity deducted: 1  
[2026-06-15 18:42:28] production.INFO: New stock: 47  
[2026-06-15 18:42:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781541746845"} 
[2026-06-15 19:37:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781545049800","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"6.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-10T07:33:53.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":721,"product_id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","sku":"3358","price":"2000.00","selling_price":"2000.00","purchase_price":"760.00","quantity":1,"subtotal":2000,"product":{"id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3358","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 19:37:31] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-06-15 19:37:31] production.INFO: Old stock: 6.00  
[2026-06-15 19:37:31] production.INFO: Quantity deducted: 1  
[2026-06-15 19:37:31] production.INFO: New stock: 5  
[2026-06-15 19:37:31] production.INFO: Stock deduction for product: Tetracycline Eye Ointiment (WW-TEO)  
[2026-06-15 19:37:31] production.INFO: Old stock: 12.00  
[2026-06-15 19:37:31] production.INFO: Quantity deducted: 1  
[2026-06-15 19:37:31] production.INFO: New stock: 11  
[2026-06-15 19:37:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781545049800"} 
[2026-06-15 19:44:42] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781545482405","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"28.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T15:23:43.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"60.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T16:09:26.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"390.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T15:26:09.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"362.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T16:06:24.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 19:44:42] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-15 19:44:42] production.INFO: Old stock: 28.00  
[2026-06-15 19:44:42] production.INFO: Quantity deducted: 1  
[2026-06-15 19:44:42] production.INFO: New stock: 27  
[2026-06-15 19:44:42] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-15 19:44:42] production.INFO: Old stock: 60.00  
[2026-06-15 19:44:42] production.INFO: Quantity deducted: 1  
[2026-06-15 19:44:42] production.INFO: New stock: 59  
[2026-06-15 19:44:42] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-15 19:44:42] production.INFO: Old stock: 390.00  
[2026-06-15 19:44:42] production.INFO: Quantity deducted: 1  
[2026-06-15 19:44:43] production.INFO: New stock: 389  
[2026-06-15 19:44:43] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-15 19:44:43] production.INFO: Old stock: 362.00  
[2026-06-15 19:44:43] production.INFO: Quantity deducted: 1  
[2026-06-15 19:44:43] production.INFO: New stock: 361  
[2026-06-15 19:44:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781545482405"} 
[2026-06-15 20:18:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781547498661","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"27.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T17:44:42.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-15 20:18:20] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-15 20:18:20] production.INFO: Old stock: 27.00  
[2026-06-15 20:18:20] production.INFO: Quantity deducted: 1  
[2026-06-15 20:18:20] production.INFO: New stock: 26  
[2026-06-15 20:18:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781547498661"} 
[2026-06-15 20:49:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781549375949","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":253,"product_id":253,"name":"DIPROSON CREAM (Betamethasone 0.05% w/w), 15g","sku":"0782","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":253,"name":"DIPROSON CREAM (Betamethasone 0.05% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0782","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-14T14:02:21.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":1500},{"method":"cash","amount":1500}]}} 
[2026-06-16 09:37:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781595454514","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":172,"product_id":172,"name":"Chloramphenical Ear Drops","sku":"1209","price":"1500.00","selling_price":"1500.00","purchase_price":"700.00","quantity":1,"subtotal":1500,"product":{"id":172,"name":"Chloramphenical Ear Drops","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1209","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-14T12:01:48.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":1000},{"method":"cash","amount":500}]}} 
[2026-06-16 09:38:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781595483778","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"220.00","stock":"274.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T14:46:52.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 09:38:03] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-16 09:38:03] production.INFO: Old stock: 220.00  
[2026-06-16 09:38:03] production.INFO: Quantity deducted: 1  
[2026-06-16 09:38:03] production.INFO: New stock: 219  
[2026-06-16 09:38:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781595483778"} 
[2026-06-16 11:05:47] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781600747531","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":665,"product_id":665,"name":"Re-Cart Capsule","sku":"3302","price":"16000.00","selling_price":"16000.00","purchase_price":"8000.00","quantity":2,"subtotal":32000,"product":{"id":665,"name":"Re-Cart Capsule","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3302","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-03-06T01:15:25.000000Z","brand":null,"category":null}},{"id":48,"product_id":48,"name":"ALCLOX-250 (Cloxacillin 250mg)","sku":"1116","price":"2500.00","selling_price":"2500.00","purchase_price":"1150.00","quantity":4,"subtotal":10000,"product":{"id":48,"name":"ALCLOX-250 (Cloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1150.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1116","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-04-08T11:08:30.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":3,"subtotal":4500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"81.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T17:11:01.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-16 11:05:47] production.INFO: Stock deduction for product: Re-Cart Capsule  
[2026-06-16 11:05:47] production.INFO: Old stock: 3.00  
[2026-06-16 11:05:47] production.INFO: Quantity deducted: 2  
[2026-06-16 11:05:47] production.INFO: New stock: 1  
[2026-06-16 11:05:47] production.INFO: Stock deduction for product: ALCLOX-250 (Cloxacillin 250mg)  
[2026-06-16 11:05:47] production.INFO: Old stock: 5.00  
[2026-06-16 11:05:47] production.INFO: Quantity deducted: 4  
[2026-06-16 11:05:47] production.INFO: New stock: 1  
[2026-06-16 11:05:47] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-16 11:05:47] production.INFO: Old stock: 81.00  
[2026-06-16 11:05:47] production.INFO: Quantity deducted: 3  
[2026-06-16 11:05:47] production.INFO: New stock: 78  
[2026-06-16 11:05:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781600747531"} 
[2026-06-16 11:10:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781601059289","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"33.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-15T16:06:24.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-16 11:10:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-16 11:10:59] production.INFO: Old stock: 33.00  
[2026-06-16 11:10:59] production.INFO: Quantity deducted: 1  
[2026-06-16 11:10:59] production.INFO: New stock: 32  
[2026-06-16 11:10:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781601059289"} 
[2026-06-16 11:14:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781601263857","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"59.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T17:44:42.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 11:14:23] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-16 11:14:23] production.INFO: Old stock: 59.00  
[2026-06-16 11:14:23] production.INFO: Quantity deducted: 1  
[2026-06-16 11:14:23] production.INFO: New stock: 58  
[2026-06-16 11:14:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781601263857"} 
[2026-06-16 11:22:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781601732263","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"32.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-14T14:40:52.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 11:22:13] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-16 11:22:13] production.INFO: Old stock: 32.00  
[2026-06-16 11:22:13] production.INFO: Quantity deducted: 1  
[2026-06-16 11:22:13] production.INFO: New stock: 31  
[2026-06-16 11:22:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781601732263"} 
[2026-06-16 11:23:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781601816366","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":458,"product_id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","sku":"3095","price":"1500.00","selling_price":"1500.00","purchase_price":"760.00","quantity":1,"subtotal":1500,"product":{"id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-15T15:24:25.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 11:23:37] production.INFO: Stock deduction for product: IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS  
[2026-06-16 11:23:37] production.INFO: Old stock: 26.00  
[2026-06-16 11:23:37] production.INFO: Quantity deducted: 1  
[2026-06-16 11:23:37] production.INFO: New stock: 25  
[2026-06-16 11:23:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781601816366"} 
[2026-06-16 12:04:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781604253603","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":3,"subtotal":4500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"16.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-13T08:01:44.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 12:04:14] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-16 12:04:14] production.INFO: Old stock: 16.00  
[2026-06-16 12:04:14] production.INFO: Quantity deducted: 3  
[2026-06-16 12:04:14] production.INFO: New stock: 13  
[2026-06-16 12:04:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781604253603"} 
[2026-06-16 12:37:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781606234843","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T19:05:35.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 12:37:14] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-06-16 12:37:14] production.INFO: Old stock: 7.00  
[2026-06-16 12:37:14] production.INFO: Quantity deducted: 1  
[2026-06-16 12:37:14] production.INFO: New stock: 6  
[2026-06-16 12:37:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781606234843"} 
[2026-06-16 12:41:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781606469369","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"61.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T06:33:07.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 12:41:10] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-06-16 12:41:10] production.INFO: Old stock: 61.00  
[2026-06-16 12:41:10] production.INFO: Quantity deducted: 1  
[2026-06-16 12:41:10] production.INFO: New stock: 60  
[2026-06-16 12:41:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781606469369"} 
[2026-06-16 13:49:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781610554983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":760,"product_id":760,"name":"VOLTEM TABLET","sku":"3397","price":"3500.00","selling_price":"3500.00","purchase_price":"1850.00","quantity":1,"subtotal":3500,"product":{"id":760,"name":"VOLTEM TABLET","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3397","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-06T18:03:51.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 13:49:14] production.INFO: Stock deduction for product: VOLTEM TABLET  
[2026-06-16 13:49:14] production.INFO: Old stock: 6.00  
[2026-06-16 13:49:14] production.INFO: Quantity deducted: 1  
[2026-06-16 13:49:14] production.INFO: New stock: 5  
[2026-06-16 13:49:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781610554983"} 
[2026-06-16 13:49:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781610563175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":603,"product_id":603,"name":"Omeprazole Capules 20mg( Zosec )","sku":"3240","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":603,"name":"Omeprazole Capules 20mg( Zosec )","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3240","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T08:34:16.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 13:49:23] production.INFO: Stock deduction for product: Omeprazole Capules 20mg( Zosec )  
[2026-06-16 13:49:23] production.INFO: Old stock: 4.00  
[2026-06-16 13:49:23] production.INFO: Quantity deducted: 1  
[2026-06-16 13:49:23] production.INFO: New stock: 3  
[2026-06-16 13:49:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781610563175"} 
[2026-06-16 15:47:47] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781617668031","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-05-23T12:17:17.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":2,"subtotal":7000,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"35.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-06-12T14:40:32.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":2,"subtotal":3000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"13.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T10:04:14.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-16 15:47:47] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-06-16 15:47:47] production.INFO: Old stock: 6.00  
[2026-06-16 15:47:47] production.INFO: Quantity deducted: 1  
[2026-06-16 15:47:47] production.INFO: New stock: 5  
[2026-06-16 15:47:48] production.INFO: Stock deduction for product: Active C  
[2026-06-16 15:47:48] production.INFO: Old stock: 35.00  
[2026-06-16 15:47:48] production.INFO: Quantity deducted: 2  
[2026-06-16 15:47:48] production.INFO: New stock: 33  
[2026-06-16 15:47:48] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-16 15:47:48] production.INFO: Old stock: 13.00  
[2026-06-16 15:47:48] production.INFO: Quantity deducted: 2  
[2026-06-16 15:47:48] production.INFO: New stock: 11  
[2026-06-16 15:47:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781617668031"} 
[2026-06-16 15:51:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781617890078","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"11.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T13:47:48.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"54.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-15T12:53:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 15:51:31] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-16 15:51:31] production.INFO: Old stock: 11.00  
[2026-06-16 15:51:31] production.INFO: Quantity deducted: 1  
[2026-06-16 15:51:31] production.INFO: New stock: 10  
[2026-06-16 15:51:31] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-16 15:51:31] production.INFO: Old stock: 54.00  
[2026-06-16 15:51:31] production.INFO: Quantity deducted: 2  
[2026-06-16 15:51:31] production.INFO: New stock: 52  
[2026-06-16 15:51:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781617890078"} 
[2026-06-16 15:52:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781617931342","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"10.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T13:51:31.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 15:52:11] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-16 15:52:11] production.INFO: Old stock: 10.00  
[2026-06-16 15:52:11] production.INFO: Quantity deducted: 1  
[2026-06-16 15:52:11] production.INFO: New stock: 9  
[2026-06-16 15:52:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781617931342"} 
[2026-06-16 16:06:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781618808410","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":389,"product_id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","sku":"3026","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3026","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-28T09:59:03.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 16:06:49] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 30g  
[2026-06-16 16:06:49] production.INFO: Old stock: 10.00  
[2026-06-16 16:06:49] production.INFO: Quantity deducted: 1  
[2026-06-16 16:06:49] production.INFO: New stock: 9  
[2026-06-16 16:06:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781618808410"} 
[2026-06-16 16:08:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781618934722","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"52.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T13:51:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 16:08:55] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-16 16:08:55] production.INFO: Old stock: 52.00  
[2026-06-16 16:08:55] production.INFO: Quantity deducted: 1  
[2026-06-16 16:08:55] production.INFO: New stock: 51  
[2026-06-16 16:08:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781618934722"} 
[2026-06-16 16:41:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781620886921","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Ashwaganda","sku":"1259","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":82,"name":"Ashwaganda","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"18.00","stock":"20.00","product_type":"Single","tax":null,"sku":"1259","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-23","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-18T07:16:27.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 16:41:28] production.INFO: Stock deduction for product: Ashwaganda  
[2026-06-16 16:41:28] production.INFO: Old stock: 18.00  
[2026-06-16 16:41:28] production.INFO: Quantity deducted: 1  
[2026-06-16 16:41:28] production.INFO: New stock: 17  
[2026-06-16 16:41:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781620886921"} 
[2026-06-16 16:44:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781621071080","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-06-03T08:09:58.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 16:44:32] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-06-16 16:44:32] production.INFO: Old stock: 6.00  
[2026-06-16 16:44:32] production.INFO: Quantity deducted: 1  
[2026-06-16 16:44:32] production.INFO: New stock: 5  
[2026-06-16 16:44:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781621071080"} 
[2026-06-16 17:00:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781622017813","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":405,"product_id":405,"name":"Gavison Double Action Liquid","sku":"3042","price":"50000.00","selling_price":"50000.00","purchase_price":"25000.00","quantity":1,"subtotal":50000,"product":{"id":405,"name":"Gavison Double Action Liquid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"25000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"3.00","stock":"3.00","product_type":"Single","tax":null,"sku":"3042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-25T10:03:28.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-16 17:00:19] production.INFO: Stock deduction for product: Gavison Double Action Liquid  
[2026-06-16 17:00:19] production.INFO: Old stock: 3.00  
[2026-06-16 17:00:19] production.INFO: Quantity deducted: 1  
[2026-06-16 17:00:19] production.INFO: New stock: 2  
[2026-06-16 17:00:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781622017813"} 
[2026-06-16 17:07:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781622457066","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-14T08:39:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"389.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-15T17:44:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 17:07:38] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-16 17:07:38] production.INFO: Old stock: 5.00  
[2026-06-16 17:07:38] production.INFO: Quantity deducted: 1  
[2026-06-16 17:07:38] production.INFO: New stock: 4  
[2026-06-16 17:07:38] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-16 17:07:38] production.INFO: Old stock: 389.00  
[2026-06-16 17:07:38] production.INFO: Quantity deducted: 1  
[2026-06-16 17:07:38] production.INFO: New stock: 388  
[2026-06-16 17:07:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781622457066"} 
[2026-06-16 17:18:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781623115519","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"42.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-13T16:47:59.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 17:18:36] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-16 17:18:36] production.INFO: Old stock: 42.00  
[2026-06-16 17:18:36] production.INFO: Quantity deducted: 1  
[2026-06-16 17:18:36] production.INFO: New stock: 41  
[2026-06-16 17:18:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781623115519"} 
[2026-06-16 17:38:01] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781624280378","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"32.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T09:24:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"388.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T15:07:38.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 17:38:01] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-16 17:38:01] production.INFO: Old stock: 32.00  
[2026-06-16 17:38:01] production.INFO: Quantity deducted: 2  
[2026-06-16 17:38:01] production.INFO: New stock: 30  
[2026-06-16 17:38:01] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-16 17:38:01] production.INFO: Old stock: 388.00  
[2026-06-16 17:38:01] production.INFO: Quantity deducted: 1  
[2026-06-16 17:38:01] production.INFO: New stock: 387  
[2026-06-16 17:38:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781624280378"} 
[2026-06-16 17:56:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781625409141","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"28.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-13T13:33:17.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 17:56:50] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-16 17:56:50] production.INFO: Old stock: 28.00  
[2026-06-16 17:56:50] production.INFO: Quantity deducted: 1  
[2026-06-16 17:56:50] production.INFO: New stock: 27  
[2026-06-16 17:56:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781625409141"} 
[2026-06-16 17:57:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781625424525","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":2,"subtotal":4000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"30.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T14:41:33.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 17:57:05] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-16 17:57:05] production.INFO: Old stock: 30.00  
[2026-06-16 17:57:05] production.INFO: Quantity deducted: 2  
[2026-06-16 17:57:05] production.INFO: New stock: 28  
[2026-06-16 17:57:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781625424525"} 
[2026-06-16 18:08:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781626104338","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"19.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T18:40:58.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 18:08:25] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-16 18:08:25] production.INFO: Old stock: 19.00  
[2026-06-16 18:08:25] production.INFO: Quantity deducted: 1  
[2026-06-16 18:08:25] production.INFO: New stock: 18  
[2026-06-16 18:08:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781626104338"} 
[2026-06-16 18:20:56] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1781626856359","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":498,"product_id":498,"name":"LACILLIN-250 (Ampicillin 250mg)","sku":"3135","price":"3000.00","selling_price":"3000.00","purchase_price":"600.00","quantity":10,"subtotal":30000,"product":{"id":498,"name":"LACILLIN-250 (Ampicillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"70.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3135","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T10:43:08.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":10,"subtotal":25000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"41.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T15:18:36.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"51.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T14:08:55.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"11.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T14:40:32.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":681,"product_id":681,"name":"Septilab Solution","sku":"3318","price":"3000.00","selling_price":"3000.00","purchase_price":"1545.00","quantity":1,"subtotal":3000,"product":{"id":681,"name":"Septilab Solution","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1545.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3318","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-26T09:49:58.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"4000.00","selling_price":"4000.00","purchase_price":"1750.00","quantity":1,"subtotal":4000,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"4000.00","current_stock":"14.00","stock":"15.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-10","last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-06-14T11:29:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-16 18:20:57] production.INFO: Stock deduction for product: LACILLIN-250 (Ampicillin 250mg)  
[2026-06-16 18:20:57] production.INFO: Old stock: 70.00  
[2026-06-16 18:20:57] production.INFO: Quantity deducted: 10  
[2026-06-16 18:20:57] production.INFO: New stock: 60  
[2026-06-16 18:20:57] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-16 18:20:57] production.INFO: Old stock: 41.00  
[2026-06-16 18:20:57] production.INFO: Quantity deducted: 10  
[2026-06-16 18:20:57] production.INFO: New stock: 31  
[2026-06-16 18:20:57] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-16 18:20:57] production.INFO: Old stock: 51.00  
[2026-06-16 18:20:57] production.INFO: Quantity deducted: 1  
[2026-06-16 18:20:57] production.INFO: New stock: 50  
[2026-06-16 18:20:57] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-16 18:20:57] production.INFO: Old stock: 11.00  
[2026-06-16 18:20:57] production.INFO: Quantity deducted: 1  
[2026-06-16 18:20:57] production.INFO: New stock: 10  
[2026-06-16 18:20:57] production.INFO: Stock deduction for product: Septilab Solution  
[2026-06-16 18:20:57] production.INFO: Old stock: 1.00  
[2026-06-16 18:20:57] production.INFO: Quantity deducted: 1  
[2026-06-16 18:20:57] production.INFO: New stock: 0  
[2026-06-16 18:20:57] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-06-16 18:20:57] production.INFO: Old stock: 14.00  
[2026-06-16 18:20:57] production.INFO: Quantity deducted: 1  
[2026-06-16 18:20:57] production.INFO: New stock: 13  
[2026-06-16 18:20:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781626856359"} 
[2026-06-16 18:31:23] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781627482012","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"31.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-15T07:27:37.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"164.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-15T13:28:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"361.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T17:44:43.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"387.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T15:38:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 18:31:23] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-16 18:31:23] production.INFO: Old stock: 31.00  
[2026-06-16 18:31:23] production.INFO: Quantity deducted: 1  
[2026-06-16 18:31:23] production.INFO: New stock: 30  
[2026-06-16 18:31:23] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-16 18:31:23] production.INFO: Old stock: 164.00  
[2026-06-16 18:31:23] production.INFO: Quantity deducted: 1  
[2026-06-16 18:31:23] production.INFO: New stock: 163  
[2026-06-16 18:31:23] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-16 18:31:23] production.INFO: Old stock: 361.00  
[2026-06-16 18:31:23] production.INFO: Quantity deducted: 1  
[2026-06-16 18:31:23] production.INFO: New stock: 360  
[2026-06-16 18:31:23] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-16 18:31:23] production.INFO: Old stock: 387.00  
[2026-06-16 18:31:23] production.INFO: Quantity deducted: 1  
[2026-06-16 18:31:23] production.INFO: New stock: 386  
[2026-06-16 18:31:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781627482012"} 
[2026-06-16 18:48:56] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781628534759","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"44.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-14T10:34:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":763,"product_id":763,"name":"Water Plaster","sku":"3400","price":"200.00","selling_price":"200.00","purchase_price":"36.00","quantity":1,"subtotal":200,"product":{"id":763,"name":"Water Plaster","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"36.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"416.00","stock":"419.00","product_type":"Single","tax":null,"sku":"3400","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T18:19:12.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"10.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-11T15:24:39.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"9.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T13:52:11.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 18:48:56] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-06-16 18:48:56] production.INFO: Old stock: 44.00  
[2026-06-16 18:48:56] production.INFO: Quantity deducted: 1  
[2026-06-16 18:48:56] production.INFO: New stock: 43  
[2026-06-16 18:48:56] production.INFO: Stock deduction for product: Water Plaster  
[2026-06-16 18:48:56] production.INFO: Old stock: 416.00  
[2026-06-16 18:48:56] production.INFO: Quantity deducted: 1  
[2026-06-16 18:48:56] production.INFO: New stock: 415  
[2026-06-16 18:48:56] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-16 18:48:56] production.INFO: Old stock: 10.00  
[2026-06-16 18:48:56] production.INFO: Quantity deducted: 1  
[2026-06-16 18:48:56] production.INFO: New stock: 9  
[2026-06-16 18:48:56] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-16 18:48:56] production.INFO: Old stock: 9.00  
[2026-06-16 18:48:56] production.INFO: Quantity deducted: 1  
[2026-06-16 18:48:56] production.INFO: New stock: 8  
[2026-06-16 18:48:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781628534759"} 
[2026-06-16 18:51:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781628694710","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"BROXOL Junior (Syrup), 100ml","sku":"0713","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":140,"name":"BROXOL Junior (Syrup), 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"2.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0713","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-05T16:37:42.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 18:51:35] production.INFO: Stock deduction for product: BROXOL Junior (Syrup), 100ml  
[2026-06-16 18:51:35] production.INFO: Old stock: 2.00  
[2026-06-16 18:51:35] production.INFO: Quantity deducted: 1  
[2026-06-16 18:51:35] production.INFO: New stock: 1  
[2026-06-16 18:51:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781628694710"} 
[2026-06-16 19:03:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781629417099","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":603,"product_id":603,"name":"Omeprazole Capules 20mg( Zosec )","sku":"3240","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":603,"name":"Omeprazole Capules 20mg( Zosec )","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3240","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T11:49:23.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"117.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T15:07:38.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-16 19:03:38] production.INFO: Stock deduction for product: Omeprazole Capules 20mg( Zosec )  
[2026-06-16 19:03:38] production.INFO: Old stock: 3.00  
[2026-06-16 19:03:38] production.INFO: Quantity deducted: 1  
[2026-06-16 19:03:38] production.INFO: New stock: 2  
[2026-06-16 19:03:38] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-16 19:03:38] production.INFO: Old stock: 117.00  
[2026-06-16 19:03:38] production.INFO: Quantity deducted: 1  
[2026-06-16 19:03:38] production.INFO: New stock: 116  
[2026-06-16 19:03:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781629417099"} 
[2026-06-16 19:26:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781630799461","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T12:45:39.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 19:26:40] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-16 19:26:40] production.INFO: Old stock: 16.00  
[2026-06-16 19:26:40] production.INFO: Quantity deducted: 1  
[2026-06-16 19:26:40] production.INFO: New stock: 15  
[2026-06-16 19:26:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781630799461"} 
[2026-06-16 19:33:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781631194668","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":99,"product_id":99,"name":"BECLOMIN CREAM, 15g","sku":"0695","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":99,"name":"BECLOMIN CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"24.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0695","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-02T17:11:06.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 19:33:15] production.INFO: Stock deduction for product: BECLOMIN CREAM, 15g  
[2026-06-16 19:33:15] production.INFO: Old stock: 24.00  
[2026-06-16 19:33:15] production.INFO: Quantity deducted: 1  
[2026-06-16 19:33:15] production.INFO: New stock: 23  
[2026-06-16 19:33:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781631194668"} 
[2026-06-16 19:43:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781631791456","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"163.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T16:31:23.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 19:43:12] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-16 19:43:12] production.INFO: Old stock: 163.00  
[2026-06-16 19:43:12] production.INFO: Quantity deducted: 1  
[2026-06-16 19:43:12] production.INFO: New stock: 162  
[2026-06-16 19:43:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781631791456"} 
[2026-06-16 20:39:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781635176697","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":222,"product_id":222,"name":"DAZOLE-B CREAM, 20g","sku":"0771","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":222,"name":"DAZOLE-B CREAM, 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0771","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-03-09T08:59:21.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 20:39:37] production.INFO: Stock deduction for product: DAZOLE-B CREAM, 20g  
[2026-06-16 20:39:37] production.INFO: Old stock: 6.00  
[2026-06-16 20:39:37] production.INFO: Quantity deducted: 1  
[2026-06-16 20:39:37] production.INFO: New stock: 5  
[2026-06-16 20:39:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781635176697"} 
[2026-06-16 20:42:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781635344137","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":632,"product_id":632,"name":"Phenobarbitone 30 mg","sku":"3269","price":"2500.00","selling_price":"2500.00","purchase_price":"1197.00","quantity":1,"subtotal":2500,"product":{"id":632,"name":"Phenobarbitone 30 mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"1197.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"43.00","stock":"49.00","product_type":"Single","tax":null,"sku":"3269","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-27T07:23:23.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-16 20:42:25] production.INFO: Stock deduction for product: Phenobarbitone 30 mg  
[2026-06-16 20:42:25] production.INFO: Old stock: 43.00  
[2026-06-16 20:42:25] production.INFO: Quantity deducted: 1  
[2026-06-16 20:42:25] production.INFO: New stock: 42  
[2026-06-16 20:42:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781635344137"} 
[2026-06-17 07:52:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781675554260","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T16:00:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 07:52:35] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-17 07:52:35] production.INFO: Old stock: 47.00  
[2026-06-17 07:52:35] production.INFO: Quantity deducted: 1  
[2026-06-17 07:52:35] production.INFO: New stock: 46  
[2026-06-17 07:52:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781675554260"} 
[2026-06-17 08:39:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781678375379","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"50.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T16:20:57.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 08:39:34] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-17 08:39:34] production.INFO: Old stock: 50.00  
[2026-06-17 08:39:34] production.INFO: Quantity deducted: 1  
[2026-06-17 08:39:34] production.INFO: New stock: 49  
[2026-06-17 08:39:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781678375379"} 
[2026-06-17 08:41:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781678485570","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":383,"product_id":383,"name":"FRICKS SYRUP 100MLS","sku":"3020","price":"7500.00","selling_price":"7500.00","purchase_price":"3950.00","quantity":1,"subtotal":7500,"product":{"id":383,"name":"FRICKS SYRUP 100MLS","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3020","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T16:26:02.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"386.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T16:31:23.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"card","amount":8000},{"method":"cash","amount":500}]}} 
[2026-06-17 08:56:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781679364831","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"29.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T09:59:58.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":3,"subtotal":9000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"43.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-09T05:41:16.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":2,"subtotal":2000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"84.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-15T13:37:52.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-17 08:56:04] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-06-17 08:56:04] production.INFO: Old stock: 29.00  
[2026-06-17 08:56:04] production.INFO: Quantity deducted: 1  
[2026-06-17 08:56:04] production.INFO: New stock: 28  
[2026-06-17 08:56:05] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-17 08:56:05] production.INFO: Old stock: 43.00  
[2026-06-17 08:56:05] production.INFO: Quantity deducted: 3  
[2026-06-17 08:56:05] production.INFO: New stock: 40  
[2026-06-17 08:56:05] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-17 08:56:05] production.INFO: Old stock: 84.00  
[2026-06-17 08:56:05] production.INFO: Quantity deducted: 2  
[2026-06-17 08:56:05] production.INFO: New stock: 82  
[2026-06-17 08:56:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781679364831"} 
[2026-06-17 09:29:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781681349510","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"32.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-16T09:10:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 09:29:08] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-17 09:29:08] production.INFO: Old stock: 32.00  
[2026-06-17 09:29:08] production.INFO: Quantity deducted: 1  
[2026-06-17 09:29:08] production.INFO: New stock: 31  
[2026-06-17 09:29:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781681349510"} 
[2026-06-17 09:35:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781681758197","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":220,"product_id":220,"name":"Dazel Kit","sku":"1281","price":"32000.00","selling_price":"32000.00","purchase_price":"15000.00","quantity":1,"subtotal":32000,"product":{"id":220,"name":"Dazel Kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"7","brand_id":"9","supplier_id":null,"purchase_price":"15000.00","last_purchase_price":null,"selling_price":"32000.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-16","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-15T07:07:36.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 09:35:58] production.INFO: Stock deduction for product: Dazel Kit  
[2026-06-17 09:35:58] production.INFO: Old stock: 7.00  
[2026-06-17 09:35:58] production.INFO: Quantity deducted: 1  
[2026-06-17 09:35:58] production.INFO: New stock: 6  
[2026-06-17 09:35:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781681758197"} 
[2026-06-17 09:50:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781682635809","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"30.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T15:38:01.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 09:50:36] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-17 09:50:36] production.INFO: Old stock: 30.00  
[2026-06-17 09:50:36] production.INFO: Quantity deducted: 5  
[2026-06-17 09:50:36] production.INFO: New stock: 25  
[2026-06-17 09:50:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781682635809"} 
[2026-06-17 10:41:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781685700972","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"10.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-15T14:55:15.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 10:41:41] production.INFO: Stock deduction for product: PregStream  
[2026-06-17 10:41:41] production.INFO: Old stock: 10.00  
[2026-06-17 10:41:41] production.INFO: Quantity deducted: 1  
[2026-06-17 10:41:41] production.INFO: New stock: 9  
[2026-06-17 10:41:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781685700972"} 
[2026-06-17 10:44:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781685885980","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"10.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T08:42:47.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-17 10:44:46] production.INFO: Stock deduction for product: PregStream  
[2026-06-17 10:44:46] production.INFO: Old stock: 10.00  
[2026-06-17 10:44:46] production.INFO: Quantity deducted: 1  
[2026-06-17 10:44:46] production.INFO: New stock: 9  
[2026-06-17 10:44:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781685885980"} 
[2026-06-17 11:43:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781689383485","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"34.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:50:36.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 11:43:03] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-17 11:43:03] production.INFO: Old stock: 34.00  
[2026-06-17 11:43:03] production.INFO: Quantity deducted: 1  
[2026-06-17 11:43:03] production.INFO: New stock: 33  
[2026-06-17 11:43:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781689383485"} 
[2026-06-17 12:16:11] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781691371605","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"14.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-10T11:55:29.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T11:55:29.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":1,"subtotal":500,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"40.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T09:11:16.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":677,"product_id":677,"name":"Salbutumol 4mg","sku":"3314","price":"1000.00","selling_price":"1000.00","purchase_price":"495.00","quantity":1,"subtotal":1000,"product":{"id":677,"name":"Salbutumol 4mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3314","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T15:03:51.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-06-17 12:16:11] production.INFO: Old stock: 14.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 13  
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: Water for Injection  
[2026-06-17 12:16:11] production.INFO: Old stock: 20.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 19  
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-06-17 12:16:11] production.INFO: Old stock: 40.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 39  
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: Salbutumol 4mg  
[2026-06-17 12:16:11] production.INFO: Old stock: 37.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 36  
[2026-06-17 12:16:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781691371605"} 
[2026-06-17 12:16:11] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781691372844","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"14.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-10T11:55:29.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-10T11:55:29.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":1,"subtotal":500,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"40.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T09:11:16.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":677,"product_id":677,"name":"Salbutumol 4mg","sku":"3314","price":"1000.00","selling_price":"1000.00","purchase_price":"495.00","quantity":1,"subtotal":1000,"product":{"id":677,"name":"Salbutumol 4mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3314","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T15:03:51.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-06-17 12:16:11] production.INFO: Old stock: 13.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 12  
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: Water for Injection  
[2026-06-17 12:16:11] production.INFO: Old stock: 19.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 18  
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-06-17 12:16:11] production.INFO: Old stock: 39.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 38  
[2026-06-17 12:16:11] production.INFO: Stock deduction for product: Salbutumol 4mg  
[2026-06-17 12:16:11] production.INFO: Old stock: 36.00  
[2026-06-17 12:16:11] production.INFO: Quantity deducted: 1  
[2026-06-17 12:16:11] production.INFO: New stock: 35  
[2026-06-17 12:16:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781691372844"} 
[2026-06-17 13:23:55] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781695435211","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":545,"product_id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","sku":"3182","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"15.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3182","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-24T02:31:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"182.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T08:28:08.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 13:23:55] production.INFO: Stock deduction for product: MEFENAMIC ACID (FENAMEX) 500MG  
[2026-06-17 13:23:55] production.INFO: Old stock: 15.00  
[2026-06-17 13:23:55] production.INFO: Quantity deducted: 1  
[2026-06-17 13:23:55] production.INFO: New stock: 14  
[2026-06-17 13:23:55] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-17 13:23:55] production.INFO: Old stock: 182.00  
[2026-06-17 13:23:55] production.INFO: Quantity deducted: 1  
[2026-06-17 13:23:55] production.INFO: New stock: 181  
[2026-06-17 13:23:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781695435211"} 
[2026-06-17 14:12:58] production.INFO: Stock Adjustment - Initial State {"product_id":"885","previous_quantity":"0.00","previous_selling_price":"22000.00","validated_data":{"product_id":"885","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 14:12:58] production.INFO: Stock Adjustment - After Quantity Save {"product_id":885,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 14:13:19] production.INFO: Stock Adjustment - Initial State {"product_id":"886","previous_quantity":"1.00","previous_selling_price":"32000.00","validated_data":{"product_id":"886","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 14:13:19] production.INFO: Stock Adjustment - After Quantity Save {"product_id":886,"new_quantity":3.0,"current_stock":3.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 14:15:08] production.INFO: Stock Adjustment - Initial State {"product_id":"735","previous_quantity":"3.01","previous_selling_price":"17000.00","validated_data":{"product_id":"735","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 14:15:08] production.INFO: Stock Adjustment - After Quantity Save {"product_id":735,"new_quantity":8.01,"current_stock":8.01,"changes_made":"Quantity adjusted"} 
[2026-06-17 14:15:29] production.INFO: Stock Adjustment - Initial State {"product_id":"792","previous_quantity":"2.00","previous_selling_price":"12000.00","validated_data":{"product_id":"792","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 14:15:29] production.INFO: Stock Adjustment - After Quantity Save {"product_id":792,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 14:15:50] production.INFO: Stock Adjustment - Initial State {"product_id":"33","previous_quantity":"2.00","previous_selling_price":"16000.00","validated_data":{"product_id":"33","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 14:15:50] production.INFO: Stock Adjustment - After Quantity Save {"product_id":33,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 15:33:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781703236819","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":2,"subtotal":300,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"25.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-12T07:46:08.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 15:33:58] production.INFO: Stock deduction for product: Tumbocid  
[2026-06-17 15:33:58] production.INFO: Old stock: 25.00  
[2026-06-17 15:33:58] production.INFO: Quantity deducted: 2  
[2026-06-17 15:33:58] production.INFO: New stock: 23  
[2026-06-17 15:33:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781703236819"} 
[2026-06-17 16:23:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781706205791","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":2,"subtotal":3000,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-05T08:44:48.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":2500},{"method":"cash","amount":500}]}} 
[2026-06-17 16:24:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781706273502","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":3,"subtotal":9000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-06-15T16:06:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 16:24:33] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-06-17 16:24:33] production.INFO: Old stock: 17.00  
[2026-06-17 16:24:33] production.INFO: Quantity deducted: 3  
[2026-06-17 16:24:33] production.INFO: New stock: 14  
[2026-06-17 16:24:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781706273502"} 
[2026-06-17 16:27:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781706471365","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":415,"product_id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","sku":"3052","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T18:09:58.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 16:27:52] production.INFO: Stock deduction for product: Glam & Glory (Snail White Lotion) 25ml  
[2026-06-17 16:27:52] production.INFO: Old stock: 8.00  
[2026-06-17 16:27:52] production.INFO: Quantity deducted: 1  
[2026-06-17 16:27:52] production.INFO: New stock: 7  
[2026-06-17 16:27:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781706471365"} 
[2026-06-17 16:46:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781707602049","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":749,"product_id":749,"name":"Vagid Pessary 100mg","sku":"3386","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":749,"name":"Vagid Pessary 100mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3386","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-04-20T02:18:59.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":117,"product_id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","sku":"0705","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0705","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-06T00:11:16.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-17 16:46:43] production.INFO: Stock deduction for product: Vagid Pessary 100mg  
[2026-06-17 16:46:43] production.INFO: Old stock: 12.00  
[2026-06-17 16:46:43] production.INFO: Quantity deducted: 1  
[2026-06-17 16:46:43] production.INFO: New stock: 11  
[2026-06-17 16:46:43] production.INFO: Stock deduction for product: BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g  
[2026-06-17 16:46:43] production.INFO: Old stock: 15.00  
[2026-06-17 16:46:43] production.INFO: Quantity deducted: 1  
[2026-06-17 16:46:43] production.INFO: New stock: 14  
[2026-06-17 16:46:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781707602049"} 
[2026-06-17 16:53:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781708012871","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"4.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-06-14T12:44:05.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 16:53:33] production.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-06-17 16:53:33] production.INFO: Old stock: 4.00  
[2026-06-17 16:53:33] production.INFO: Quantity deducted: 1  
[2026-06-17 16:53:33] production.INFO: New stock: 3  
[2026-06-17 16:53:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781708012871"} 
[2026-06-17 16:58:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781708288637","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"58.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-16T09:14:23.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-17 16:58:08] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-17 16:58:08] production.INFO: Old stock: 58.00  
[2026-06-17 16:58:08] production.INFO: Quantity deducted: 1  
[2026-06-17 16:58:08] production.INFO: New stock: 57  
[2026-06-17 16:58:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781708288637"} 
[2026-06-17 17:05:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781708747908","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-14T07:00:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 17:05:49] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-17 17:05:49] production.INFO: Old stock: 13.00  
[2026-06-17 17:05:49] production.INFO: Quantity deducted: 1  
[2026-06-17 17:05:49] production.INFO: New stock: 12  
[2026-06-17 17:05:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781708747908"} 
[2026-06-17 17:26:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781709996838","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":714,"product_id":714,"name":"Surgical Spirit","sku":"3351","price":"8500.00","selling_price":"8500.00","purchase_price":"4100.00","quantity":1,"subtotal":8500,"product":{"id":714,"name":"Surgical Spirit","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"4100.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3351","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-30T00:44:46.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 17:26:38] production.INFO: Stock deduction for product: Surgical Spirit  
[2026-06-17 17:26:38] production.INFO: Old stock: 3.00  
[2026-06-17 17:26:38] production.INFO: Quantity deducted: 1  
[2026-06-17 17:26:38] production.INFO: New stock: 2  
[2026-06-17 17:26:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781709996838"} 
[2026-06-17 17:27:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781710031870","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"24.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T17:58:54.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 17:27:12] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-17 17:27:12] production.INFO: Old stock: 24.00  
[2026-06-17 17:27:12] production.INFO: Quantity deducted: 1  
[2026-06-17 17:27:12] production.INFO: New stock: 23  
[2026-06-17 17:27:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781710031870"} 
[2026-06-17 17:46:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781711173449","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"3.00","stock":"25.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-12T08:42:51.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":202,"product_id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","sku":"0763","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"6.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0763","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-02T15:27:40.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"49.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T06:39:34.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 17:46:14] production.INFO: Stock deduction for product: Iduplus  
[2026-06-17 17:46:14] production.INFO: Old stock: 3.00  
[2026-06-17 17:46:14] production.INFO: Quantity deducted: 1  
[2026-06-17 17:46:14] production.INFO: New stock: 2  
[2026-06-17 17:46:14] production.INFO: Stock deduction for product: DACOF PEADEATRIC SYRUP, 100ml  
[2026-06-17 17:46:14] production.INFO: Old stock: 6.00  
[2026-06-17 17:46:14] production.INFO: Quantity deducted: 1  
[2026-06-17 17:46:14] production.INFO: New stock: 5  
[2026-06-17 17:46:14] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-17 17:46:14] production.INFO: Old stock: 49.00  
[2026-06-17 17:46:14] production.INFO: Quantity deducted: 1  
[2026-06-17 17:46:14] production.INFO: New stock: 48  
[2026-06-17 17:46:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781711173449"} 
[2026-06-17 17:50:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781711445408","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"9.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T08:44:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-17 17:50:46] production.INFO: Stock deduction for product: PregStream  
[2026-06-17 17:50:46] production.INFO: Old stock: 9.00  
[2026-06-17 17:50:46] production.INFO: Quantity deducted: 1  
[2026-06-17 17:50:46] production.INFO: New stock: 8  
[2026-06-17 17:50:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781711445408"} 
[2026-06-17 17:52:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781711538176","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"360.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-16T16:31:23.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"381.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-17T06:41:26.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-17 17:52:18] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-17 17:52:18] production.INFO: Old stock: 360.00  
[2026-06-17 17:52:18] production.INFO: Quantity deducted: 1  
[2026-06-17 17:52:18] production.INFO: New stock: 359  
[2026-06-17 17:52:18] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-17 17:52:18] production.INFO: Old stock: 381.00  
[2026-06-17 17:52:18] production.INFO: Quantity deducted: 1  
[2026-06-17 17:52:18] production.INFO: New stock: 380  
[2026-06-17 17:52:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781711538176"} 
[2026-06-17 17:53:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781711635151","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"57.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T14:58:08.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 17:53:56] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-17 17:53:56] production.INFO: Old stock: 57.00  
[2026-06-17 17:53:56] production.INFO: Quantity deducted: 1  
[2026-06-17 17:53:56] production.INFO: New stock: 56  
[2026-06-17 17:53:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781711635151"} 
[2026-06-17 17:58:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781711938502","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":217,"product_id":217,"name":"Dawasprin 75","sku":"1369","price":"1000.00","selling_price":"1000.00","purchase_price":"420.00","quantity":2,"subtotal":2000,"product":{"id":217,"name":"Dawasprin 75","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"7","brand_id":"31","supplier_id":null,"purchase_price":"420.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"20.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1369","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-24T02:27:05.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 17:58:59] production.INFO: Stock deduction for product: Dawasprin 75  
[2026-06-17 17:58:59] production.INFO: Old stock: 20.00  
[2026-06-17 17:58:59] production.INFO: Quantity deducted: 2  
[2026-06-17 17:58:59] production.INFO: New stock: 18  
[2026-06-17 17:58:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781711938502"} 
[2026-06-17 18:00:39] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781712038341","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"50.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-15T06:39:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"48.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T15:46:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 18:00:39] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-17 18:00:39] production.INFO: Old stock: 50.00  
[2026-06-17 18:00:39] production.INFO: Quantity deducted: 1  
[2026-06-17 18:00:39] production.INFO: New stock: 49  
[2026-06-17 18:00:39] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-17 18:00:39] production.INFO: Old stock: 48.00  
[2026-06-17 18:00:39] production.INFO: Quantity deducted: 1  
[2026-06-17 18:00:39] production.INFO: New stock: 47  
[2026-06-17 18:00:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781712038341"} 
[2026-06-17 18:06:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781712380965","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"23.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T15:27:12.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 18:06:21] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-17 18:06:21] production.INFO: Old stock: 23.00  
[2026-06-17 18:06:21] production.INFO: Quantity deducted: 1  
[2026-06-17 18:06:21] production.INFO: New stock: 22  
[2026-06-17 18:06:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781712380965"} 
[2026-06-17 18:19:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781713180129","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"33.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T10:40:51.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 18:19:41] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-06-17 18:19:41] production.INFO: Old stock: 33.00  
[2026-06-17 18:19:41] production.INFO: Quantity deducted: 1  
[2026-06-17 18:19:41] production.INFO: New stock: 32  
[2026-06-17 18:19:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781713180129"} 
[2026-06-17 18:33:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781714013397","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"23.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T14:23:27.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 18:33:34] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-17 18:33:34] production.INFO: Old stock: 23.00  
[2026-06-17 18:33:34] production.INFO: Quantity deducted: 1  
[2026-06-17 18:33:34] production.INFO: New stock: 22  
[2026-06-17 18:33:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781714013397"} 
[2026-06-17 19:11:45] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781716305019","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":878,"product_id":878,"name":"Chia Seeds 125g","sku":"PRD-00878","price":"9000.00","selling_price":"9000.00","purchase_price":"4500.00","quantity":2,"subtotal":18000,"product":{"id":878,"name":"Chia Seeds 125g","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4500.00","last_purchase_price":"4500.00","selling_price":"9000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00878","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-15","created_at":"2026-05-15T09:31:50.000000Z","updated_at":"2026-05-15T11:23:04.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":758,"product_id":758,"name":"Vitamin E (Jeritone)","sku":"3395","price":"9000.00","selling_price":"9000.00","purchase_price":"4500.00","quantity":1,"subtotal":9000,"product":{"id":758,"name":"Vitamin E (Jeritone)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3395","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-03-06T01:15:25.000000Z","brand":null,"category":null}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":2,"subtotal":3000,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"30.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T17:40:23.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 19:11:45] production.INFO: Stock deduction for product: Chia Seeds 125g  
[2026-06-17 19:11:45] production.INFO: Old stock: 9.00  
[2026-06-17 19:11:45] production.INFO: Quantity deducted: 2  
[2026-06-17 19:11:45] production.INFO: New stock: 7  
[2026-06-17 19:11:45] production.INFO: Stock deduction for product: Vitamin E (Jeritone)  
[2026-06-17 19:11:45] production.INFO: Old stock: 3.00  
[2026-06-17 19:11:45] production.INFO: Quantity deducted: 1  
[2026-06-17 19:11:45] production.INFO: New stock: 2  
[2026-06-17 19:11:45] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-17 19:11:45] production.INFO: Old stock: 30.00  
[2026-06-17 19:11:45] production.INFO: Quantity deducted: 2  
[2026-06-17 19:11:45] production.INFO: New stock: 28  
[2026-06-17 19:11:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781716305019"} 
[2026-06-17 19:37:26] production.INFO: Stock Adjustment - Initial State {"product_id":"476","previous_quantity":"2.00","previous_selling_price":"3000.00","validated_data":{"product_id":"476","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:37:26] production.INFO: Stock Adjustment - After Quantity Save {"product_id":476,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:39:21] production.INFO: Stock Adjustment - Initial State {"product_id":"270","previous_quantity":"13.00","previous_selling_price":"8000.00","validated_data":{"product_id":"270","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"9000.00","new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:39:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":270,"new_quantity":18.0,"current_stock":18.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:41:46] production.INFO: Stock Adjustment - Initial State {"product_id":"830","previous_quantity":"2.00","previous_selling_price":"2000.00","validated_data":{"product_id":"830","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:41:46] production.INFO: Stock Adjustment - After Quantity Save {"product_id":830,"new_quantity":32.0,"current_stock":32.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:43:22] production.INFO: Stock Adjustment - Initial State {"product_id":"199","previous_quantity":"5.00","previous_selling_price":"7000.00","validated_data":{"product_id":"199","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:43:22] production.INFO: Stock Adjustment - After Quantity Save {"product_id":199,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:43:50] production.INFO: Stock Adjustment - Initial State {"product_id":"200","previous_quantity":"4.00","previous_selling_price":"7000.00","validated_data":{"product_id":"200","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:43:50] production.INFO: Stock Adjustment - After Quantity Save {"product_id":200,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:47:12] production.INFO: Stock Adjustment - Initial State {"product_id":"542","previous_quantity":"219.00","previous_selling_price":"500.00","validated_data":{"product_id":"542","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:47:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":542,"new_quantity":319.0,"current_stock":319.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:49:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781718586098","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"116.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-16T17:03:38.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-17 19:49:46] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-17 19:49:46] production.INFO: Old stock: 116.00  
[2026-06-17 19:49:46] production.INFO: Quantity deducted: 1  
[2026-06-17 19:49:46] production.INFO: New stock: 115  
[2026-06-17 19:49:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781718586098"} 
[2026-06-17 19:50:18] production.INFO: Stock Adjustment - Initial State {"product_id":"281","previous_quantity":"0.00","previous_selling_price":"2000.00","validated_data":{"product_id":"281","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-17"}} 
[2026-06-17 19:50:18] production.INFO: Stock Adjustment - After Quantity Save {"product_id":281,"new_quantity":50.0,"current_stock":50.0,"changes_made":"Quantity adjusted"} 
[2026-06-17 19:51:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781718691617","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"49.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-17T16:00:39.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-17 19:51:32] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-17 19:51:32] production.INFO: Old stock: 49.00  
[2026-06-17 19:51:32] production.INFO: Quantity deducted: 1  
[2026-06-17 19:51:32] production.INFO: New stock: 48  
[2026-06-17 19:51:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781718691617"} 
[2026-06-17 20:01:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781719308415","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"48.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-17T17:51:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-17 20:01:49] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-17 20:01:49] production.INFO: Old stock: 48.00  
[2026-06-17 20:01:49] production.INFO: Quantity deducted: 1  
[2026-06-17 20:01:49] production.INFO: New stock: 47  
[2026-06-17 20:01:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781719308415"} 
[2026-06-18 09:20:01] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781767200552","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":885,"product_id":885,"name":"Triphen 4 flu","sku":"PRD-00885","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":885,"name":"Triphen 4 flu","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"11000.00","last_purchase_price":"11000.00","selling_price":"22000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00885","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-17","last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:35:55.000000Z","updated_at":"2026-06-17T12:12:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":2,"subtotal":3000,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-17T17:11:45.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-18 09:20:01] production.INFO: Stock deduction for product: Triphen 4 flu  
[2026-06-18 09:20:01] production.INFO: Old stock: 5.00  
[2026-06-18 09:20:01] production.INFO: Quantity deducted: 1  
[2026-06-18 09:20:01] production.INFO: New stock: 4  
[2026-06-18 09:20:01] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-18 09:20:01] production.INFO: Old stock: 28.00  
[2026-06-18 09:20:01] production.INFO: Quantity deducted: 2  
[2026-06-18 09:20:01] production.INFO: New stock: 26  
[2026-06-18 09:20:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781767200552"} 
[2026-06-18 09:33:33] production.INFO: Stock Adjustment - Initial State {"product_id":"136","previous_quantity":"1.00","previous_selling_price":"20000.00","validated_data":{"product_id":"136","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-18"}} 
[2026-06-18 09:33:33] production.INFO: Stock Adjustment - After Quantity Save {"product_id":136,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-06-18 09:55:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781769320515","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":6,"subtotal":3000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"319.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T17:47:12.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 09:55:21] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-18 09:55:21] production.INFO: Old stock: 319.00  
[2026-06-18 09:55:21] production.INFO: Quantity deducted: 6  
[2026-06-18 09:55:21] production.INFO: New stock: 313  
[2026-06-18 09:55:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781769320515"} 
[2026-06-18 10:52:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781772758466","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":6,"subtotal":6000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"48.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-12T17:12:38.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-18 10:52:39] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-18 10:52:39] production.INFO: Old stock: 48.00  
[2026-06-18 10:52:39] production.INFO: Quantity deducted: 6  
[2026-06-18 10:52:39] production.INFO: New stock: 42  
[2026-06-18 10:52:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781772758466"} 
[2026-06-18 11:03:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781773436448","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3500.00","selling_price":"3500.00","purchase_price":"1560.00","quantity":1,"subtotal":3500,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"20.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-12T08:18:35.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-18 11:03:56] production.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-06-18 11:03:56] production.INFO: Old stock: 20.00  
[2026-06-18 11:03:56] production.INFO: Quantity deducted: 1  
[2026-06-18 11:03:56] production.INFO: New stock: 19  
[2026-06-18 11:03:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781773436448"} 
[2026-06-18 11:04:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781773486975","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T07:56:58.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 11:04:46] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-18 11:04:46] production.INFO: Old stock: 9.00  
[2026-06-18 11:04:46] production.INFO: Quantity deducted: 1  
[2026-06-18 11:04:46] production.INFO: New stock: 8  
[2026-06-18 11:04:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781773486975"} 
[2026-06-18 11:44:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781775858898","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"8.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T09:04:46.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 11:44:19] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-18 11:44:19] production.INFO: Old stock: 8.00  
[2026-06-18 11:44:19] production.INFO: Quantity deducted: 1  
[2026-06-18 11:44:19] production.INFO: New stock: 7  
[2026-06-18 11:44:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781775858898"} 
[2026-06-18 12:21:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781778107692","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":218,"product_id":218,"name":"DAWAVATE (Betamethasone Cream), 15g","sku":"0704","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":218,"name":"DAWAVATE (Betamethasone Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0704","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-21T11:13:23.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 12:21:47] production.INFO: Stock deduction for product: DAWAVATE (Betamethasone Cream), 15g  
[2026-06-18 12:21:47] production.INFO: Old stock: 11.00  
[2026-06-18 12:21:47] production.INFO: Quantity deducted: 1  
[2026-06-18 12:21:47] production.INFO: New stock: 10  
[2026-06-18 12:21:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781778107692"} 
[2026-06-18 12:22:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781778157355","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":477,"product_id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","sku":"3114","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":477,"name":"KEMOXYL (Amoxicillin Dry Suspension)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3114","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T16:27:20.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-18 12:22:36] production.INFO: Stock deduction for product: KEMOXYL (Amoxicillin Dry Suspension)  
[2026-06-18 12:22:36] production.INFO: Old stock: 1.00  
[2026-06-18 12:22:36] production.INFO: Quantity deducted: 1  
[2026-06-18 12:22:36] production.INFO: New stock: 0  
[2026-06-18 12:22:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781778157355"} 
[2026-06-18 12:28:51] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781778531139","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":70,"product_id":70,"name":"Anomex Suppositories","sku":"1231","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":70,"name":"Anomex Suppositories","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1231","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-05-26T10:17:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":27,"product_id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","sku":"0659","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"16.00","stock":"16.00","product_type":"Single","tax":null,"sku":"0659","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T10:13:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":402,"product_id":402,"name":"Gauze Swabs(10cm)","sku":"3039","price":"18000.00","selling_price":"18000.00","purchase_price":"10000.00","quantity":1,"subtotal":18000,"product":{"id":402,"name":"Gauze Swabs(10cm)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"2.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-06T17:09:35.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T07:20:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-18 12:28:51] production.INFO: Stock deduction for product: Anomex Suppositories  
[2026-06-18 12:28:51] production.INFO: Old stock: 4.00  
[2026-06-18 12:28:51] production.INFO: Quantity deducted: 1  
[2026-06-18 12:28:51] production.INFO: New stock: 3  
[2026-06-18 12:28:51] production.INFO: Stock deduction for product: ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS  
[2026-06-18 12:28:51] production.INFO: Old stock: 16.00  
[2026-06-18 12:28:51] production.INFO: Quantity deducted: 1  
[2026-06-18 12:28:51] production.INFO: New stock: 15  
[2026-06-18 12:28:51] production.INFO: Stock deduction for product: Gauze Swabs(10cm)  
[2026-06-18 12:28:51] production.INFO: Old stock: 2.00  
[2026-06-18 12:28:51] production.INFO: Quantity deducted: 1  
[2026-06-18 12:28:51] production.INFO: New stock: 1  
[2026-06-18 12:28:51] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-18 12:28:51] production.INFO: Old stock: 26.00  
[2026-06-18 12:28:51] production.INFO: Quantity deducted: 1  
[2026-06-18 12:28:51] production.INFO: New stock: 25  
[2026-06-18 12:28:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781778531139"} 
[2026-06-18 12:36:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781778998505","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-06-14T14:22:12.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-18 12:36:38] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-06-18 12:36:38] production.INFO: Old stock: 4.00  
[2026-06-18 12:36:38] production.INFO: Quantity deducted: 1  
[2026-06-18 12:36:38] production.INFO: New stock: 3  
[2026-06-18 12:36:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781778998505"} 
[2026-06-18 12:38:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781779084929","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"28.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-16T15:57:05.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"380.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-17T15:52:18.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-18 12:38:05] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-18 12:38:05] production.INFO: Old stock: 28.00  
[2026-06-18 12:38:05] production.INFO: Quantity deducted: 1  
[2026-06-18 12:38:05] production.INFO: New stock: 27  
[2026-06-18 12:38:05] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-18 12:38:05] production.INFO: Old stock: 380.00  
[2026-06-18 12:38:05] production.INFO: Quantity deducted: 5  
[2026-06-18 12:38:05] production.INFO: New stock: 375  
[2026-06-18 12:38:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781779084929"} 
[2026-06-18 12:52:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781779920231","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-13T13:04:46.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-18 12:52:00] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-18 12:52:00] production.INFO: Old stock: 7.00  
[2026-06-18 12:52:00] production.INFO: Quantity deducted: 1  
[2026-06-18 12:52:00] production.INFO: New stock: 6  
[2026-06-18 12:52:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781779920231"} 
[2026-06-18 14:19:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781785163617","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T10:28:51.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-18 14:19:22] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-18 14:19:22] production.INFO: Old stock: 25.00  
[2026-06-18 14:19:22] production.INFO: Quantity deducted: 1  
[2026-06-18 14:19:22] production.INFO: New stock: 24  
[2026-06-18 14:19:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781785163617"} 
[2026-06-18 14:42:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781786545645","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":876,"product_id":876,"name":"Pulmoclear Syrup  100ML","sku":"PRD-00876","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":876,"name":"Pulmoclear Syrup  100ML","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"11000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00876","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-14","created_at":"2026-05-14T13:02:24.000000Z","updated_at":"2026-05-14T13:02:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 14:42:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781786551501","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":876,"product_id":876,"name":"Pulmoclear Syrup  100ML","sku":"PRD-00876","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":876,"name":"Pulmoclear Syrup  100ML","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"11000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00876","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-05-14","created_at":"2026-05-14T13:02:24.000000Z","updated_at":"2026-05-14T13:02:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 14:42:32] production.INFO: Stock deduction for product: Pulmoclear Syrup  100ML  
[2026-06-18 14:42:32] production.INFO: Old stock: 5.00  
[2026-06-18 14:42:32] production.INFO: Quantity deducted: 1  
[2026-06-18 14:42:32] production.INFO: New stock: 4  
[2026-06-18 14:42:32] production.INFO: Stock deduction for product: Pulmoclear Syrup  100ML  
[2026-06-18 14:42:32] production.INFO: Old stock: 5.00  
[2026-06-18 14:42:32] production.INFO: Quantity deducted: 1  
[2026-06-18 14:42:32] production.INFO: New stock: 4  
[2026-06-18 14:42:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781786545645"} 
[2026-06-18 14:42:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781786551501"} 
[2026-06-18 15:03:54] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781787834474","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"56.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T15:53:56.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"3.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-06-17T14:53:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"359.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T15:52:18.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"375.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T10:38:05.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 15:03:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-18 15:03:54] production.INFO: Old stock: 56.00  
[2026-06-18 15:03:54] production.INFO: Quantity deducted: 1  
[2026-06-18 15:03:54] production.INFO: New stock: 55  
[2026-06-18 15:03:54] production.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-06-18 15:03:54] production.INFO: Old stock: 3.00  
[2026-06-18 15:03:54] production.INFO: Quantity deducted: 1  
[2026-06-18 15:03:54] production.INFO: New stock: 2  
[2026-06-18 15:03:54] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-18 15:03:54] production.INFO: Old stock: 359.00  
[2026-06-18 15:03:54] production.INFO: Quantity deducted: 2  
[2026-06-18 15:03:54] production.INFO: New stock: 357  
[2026-06-18 15:03:54] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-18 15:03:54] production.INFO: Old stock: 375.00  
[2026-06-18 15:03:54] production.INFO: Quantity deducted: 2  
[2026-06-18 15:03:54] production.INFO: New stock: 373  
[2026-06-18 15:03:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781787834474"} 
[2026-06-18 15:17:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781788648072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"16.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T14:16:53.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":568,"product_id":568,"name":"MOXACIL (Amoxicillin 125mg/5ml)","sku":"3205","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":568,"name":"MOXACIL (Amoxicillin 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"10","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3205","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-15T06:17:32.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 15:17:28] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-06-18 15:17:28] production.INFO: Old stock: 16.00  
[2026-06-18 15:17:28] production.INFO: Quantity deducted: 1  
[2026-06-18 15:17:28] production.INFO: New stock: 15  
[2026-06-18 15:17:28] production.INFO: Stock deduction for product: MOXACIL (Amoxicillin 125mg/5ml)  
[2026-06-18 15:17:28] production.INFO: Old stock: 3.00  
[2026-06-18 15:17:28] production.INFO: Quantity deducted: 1  
[2026-06-18 15:17:28] production.INFO: New stock: 2  
[2026-06-18 15:17:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781788648072"} 
[2026-06-18 15:55:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781790930226","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"82.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-17T06:56:05.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 15:55:31] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-18 15:55:31] production.INFO: Old stock: 82.00  
[2026-06-18 15:55:31] production.INFO: Quantity deducted: 1  
[2026-06-18 15:55:31] production.INFO: New stock: 81  
[2026-06-18 15:55:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781790930226"} 
[2026-06-18 16:24:06] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781792646238","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"31.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-12T12:33:48.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"47.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T16:00:39.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 16:24:06] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-18 16:24:06] production.INFO: Old stock: 31.00  
[2026-06-18 16:24:06] production.INFO: Quantity deducted: 1  
[2026-06-18 16:24:06] production.INFO: New stock: 30  
[2026-06-18 16:24:06] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-18 16:24:06] production.INFO: Old stock: 47.00  
[2026-06-18 16:24:06] production.INFO: Quantity deducted: 1  
[2026-06-18 16:24:06] production.INFO: New stock: 46  
[2026-06-18 16:24:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781792646238"} 
[2026-06-18 16:25:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781792739437","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"40.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-17T06:56:05.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 16:25:39] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-18 16:25:39] production.INFO: Old stock: 40.00  
[2026-06-18 16:25:39] production.INFO: Quantity deducted: 1  
[2026-06-18 16:25:39] production.INFO: New stock: 39  
[2026-06-18 16:25:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781792739437"} 
[2026-06-18 16:32:27] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781793146684","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"55.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T13:03:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":857,"product_id":857,"name":"Colgate Tooth Brush","sku":"PRD-00857","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":857,"name":"Colgate Tooth Brush","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00857","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:18:54.000000Z","updated_at":"2026-06-10T18:48:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-18 16:32:27] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-18 16:32:27] production.INFO: Old stock: 55.00  
[2026-06-18 16:32:27] production.INFO: Quantity deducted: 1  
[2026-06-18 16:32:27] production.INFO: New stock: 54  
[2026-06-18 16:32:27] production.INFO: Stock deduction for product: Colgate Tooth Brush  
[2026-06-18 16:32:27] production.INFO: Old stock: 4.00  
[2026-06-18 16:32:27] production.INFO: Quantity deducted: 1  
[2026-06-18 16:32:27] production.INFO: New stock: 3  
[2026-06-18 16:32:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781793146684"} 
[2026-06-18 16:37:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781793450707","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":1,"subtotal":150,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T13:33:58.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 16:37:31] production.INFO: Stock deduction for product: Tumbocid  
[2026-06-18 16:37:31] production.INFO: Old stock: 23.00  
[2026-06-18 16:37:31] production.INFO: Quantity deducted: 1  
[2026-06-18 16:37:31] production.INFO: New stock: 22  
[2026-06-18 16:37:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781793450707"} 
[2026-06-18 16:40:50] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781793649554","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"31.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T16:20:57.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"47.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-15T16:42:28.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":677,"product_id":677,"name":"Salbutumol 4mg","sku":"3314","price":"1000.00","selling_price":"1000.00","purchase_price":"495.00","quantity":2,"subtotal":2000,"product":{"id":677,"name":"Salbutumol 4mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"10","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"36.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3314","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T10:19:49.000000Z","brand":null,"category":{"id":10,"name":"ANTIASTHMATIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 16:40:50] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-18 16:40:50] production.INFO: Old stock: 31.00  
[2026-06-18 16:40:50] production.INFO: Quantity deducted: 1  
[2026-06-18 16:40:50] production.INFO: New stock: 30  
[2026-06-18 16:40:50] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-18 16:40:50] production.INFO: Old stock: 47.00  
[2026-06-18 16:40:50] production.INFO: Quantity deducted: 1  
[2026-06-18 16:40:50] production.INFO: New stock: 46  
[2026-06-18 16:40:50] production.INFO: Stock deduction for product: Salbutumol 4mg  
[2026-06-18 16:40:50] production.INFO: Old stock: 36.00  
[2026-06-18 16:40:50] production.INFO: Quantity deducted: 2  
[2026-06-18 16:40:50] production.INFO: New stock: 34  
[2026-06-18 16:40:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781793649554"} 
[2026-06-18 16:50:09] production.INFO: Stock Adjustment - Initial State {"product_id":"140","previous_quantity":"1.00","previous_selling_price":"6000.00","validated_data":{"product_id":"140","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-18"}} 
[2026-06-18 16:50:09] production.INFO: Stock Adjustment - After Quantity Save {"product_id":140,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-06-18 16:51:08] production.INFO: Stock Adjustment - Initial State {"product_id":"142","previous_quantity":"3.00","previous_selling_price":"4000.00","validated_data":{"product_id":"142","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"6500.00","new_purchase_price":"3250.00","new_expiry_date":"2026-06-18"}} 
[2026-06-18 16:51:08] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":142,"new_selling_price":"6500.00","current_stock":"3.00","changes_made":"Prices updated only"} 
[2026-06-18 16:51:57] production.INFO: Stock Adjustment - Initial State {"product_id":"789","previous_quantity":"2.00","previous_selling_price":"6000.00","validated_data":{"product_id":"789","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"7000.00","new_purchase_price":"3500.00","new_expiry_date":"2026-06-18"}} 
[2026-06-18 16:51:57] production.INFO: Stock Adjustment - After Quantity Save {"product_id":789,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-18 16:52:33] production.INFO: Stock Adjustment - Initial State {"product_id":"142","previous_quantity":"3.00","previous_selling_price":"6500.00","validated_data":{"product_id":"142","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-18"}} 
[2026-06-18 16:52:33] production.INFO: Stock Adjustment - After Quantity Save {"product_id":142,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-06-18 16:55:01] production.INFO: Stock Adjustment - Initial State {"product_id":"790","previous_quantity":"1.00","previous_selling_price":"5000.00","validated_data":{"product_id":"790","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":"5500.00","new_purchase_price":"2650.00","new_expiry_date":"2026-06-18"}} 
[2026-06-18 16:55:01] production.INFO: Stock Adjustment - After Quantity Save {"product_id":790,"new_quantity":51.0,"current_stock":51.0,"changes_made":"Quantity adjusted"} 
[2026-06-18 16:55:50] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781794550544","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"60.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T10:41:10.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"61.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-08T15:02:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":903,"product_id":903,"name":"Muco Asthalin","sku":"PRD-00903","price":"10500.00","selling_price":"10500.00","purchase_price":"5500.00","quantity":1,"subtotal":10500,"product":{"id":903,"name":"Muco Asthalin","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"10500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00903","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:52:22.000000Z","updated_at":"2026-06-10T15:13:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 16:55:50] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-06-18 16:55:50] production.INFO: Old stock: 60.00  
[2026-06-18 16:55:50] production.INFO: Quantity deducted: 1  
[2026-06-18 16:55:50] production.INFO: New stock: 59  
[2026-06-18 16:55:50] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-18 16:55:50] production.INFO: Old stock: 61.00  
[2026-06-18 16:55:50] production.INFO: Quantity deducted: 1  
[2026-06-18 16:55:50] production.INFO: New stock: 60  
[2026-06-18 16:55:50] production.INFO: Stock deduction for product: Muco Asthalin  
[2026-06-18 16:55:50] production.INFO: Old stock: 9.00  
[2026-06-18 16:55:50] production.INFO: Quantity deducted: 1  
[2026-06-18 16:55:50] production.INFO: New stock: 8  
[2026-06-18 16:55:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781794550544"} 
[2026-06-18 16:57:58] production.INFO: Product Store - Request Data {"all_data":{"_token":"w2ngi1zGnJ6sPwvPSnF0K2gGwrnwt7Esj2csptSI","name":"Gantamycin Eye Drop (Getacin)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1200.00","selling_price":"2500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-18 16:57:58] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Gantamycin Eye Drop (Getacin)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1200.00","selling_price":"2500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-18 16:57:58] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Gantamycin Eye Drop (Getacin)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1200.00","selling_price":"2500.00","sku":"PRD-00910","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1200.00","last_purchase_date":"2026-06-18 16:57:58"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-18 16:57:58] production.INFO: Product Store - Product Created {"product_id":910,"product_name":"Gantamycin Eye Drop (Getacin)","product_sku":"PRD-00910"} 
[2026-06-18 16:59:30] production.INFO: Product Store - Request Data {"all_data":{"_token":"w2ngi1zGnJ6sPwvPSnF0K2gGwrnwt7Esj2csptSI","name":"RB Tone Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3950.00","selling_price":"8000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-18 16:59:30] production.INFO: Product Store - Validation Success {"validated_data":{"name":"RB Tone Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3950.00","selling_price":"8000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-18 16:59:30] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"RB Tone Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3950.00","selling_price":"8000.00","sku":"PRD-00911","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"3950.00","last_purchase_date":"2026-06-18 16:59:30"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-18 16:59:30] production.INFO: Product Store - Product Created {"product_id":911,"product_name":"RB Tone Syrup","product_sku":"PRD-00911"} 
[2026-06-18 17:08:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781795321334","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"54.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T14:32:27.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 17:08:41] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-18 17:08:41] production.INFO: Old stock: 54.00  
[2026-06-18 17:08:41] production.INFO: Quantity deducted: 1  
[2026-06-18 17:08:41] production.INFO: New stock: 53  
[2026-06-18 17:08:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781795321334"} 
[2026-06-18 17:09:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781795393830","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"313.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T07:55:21.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 17:09:52] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-18 17:09:52] production.INFO: Old stock: 313.00  
[2026-06-18 17:09:52] production.INFO: Quantity deducted: 2  
[2026-06-18 17:09:52] production.INFO: New stock: 311  
[2026-06-18 17:09:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781795393830"} 
[2026-06-18 17:14:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781795657477","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"71.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-15T15:24:25.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 17:14:17] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-18 17:14:17] production.INFO: Old stock: 71.00  
[2026-06-18 17:14:17] production.INFO: Quantity deducted: 1  
[2026-06-18 17:14:17] production.INFO: New stock: 70  
[2026-06-18 17:14:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781795657477"} 
[2026-06-18 17:15:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781795729205","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"10.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T16:12:20.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-18 17:15:28] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-18 17:15:28] production.INFO: Old stock: 10.00  
[2026-06-18 17:15:28] production.INFO: Quantity deducted: 1  
[2026-06-18 17:15:28] production.INFO: New stock: 9  
[2026-06-18 17:15:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781795729205"} 
[2026-06-18 17:53:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781798024303","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":598,"product_id":598,"name":"NYSTATIN (DAWASTIN) ORAL DROPS 30ML","sku":"3235","price":"5000.00","selling_price":"5000.00","purchase_price":"3200.00","quantity":1,"subtotal":5000,"product":{"id":598,"name":"NYSTATIN (DAWASTIN) ORAL DROPS 30ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"15","brand_id":"10","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3235","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-10T10:25:17.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 17:53:45] production.INFO: Stock deduction for product: NYSTATIN (DAWASTIN) ORAL DROPS 30ML  
[2026-06-18 17:53:45] production.INFO: Old stock: 12.00  
[2026-06-18 17:53:45] production.INFO: Quantity deducted: 1  
[2026-06-18 17:53:45] production.INFO: New stock: 11  
[2026-06-18 17:53:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781798024303"} 
[2026-06-18 17:55:45] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781798146447","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"33.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T09:43:03.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"169.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-12T10:07:20.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 17:55:45] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-18 17:55:45] production.INFO: Old stock: 33.00  
[2026-06-18 17:55:45] production.INFO: Quantity deducted: 1  
[2026-06-18 17:55:45] production.INFO: New stock: 32  
[2026-06-18 17:55:45] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-18 17:55:45] production.INFO: Old stock: 169.00  
[2026-06-18 17:55:45] production.INFO: Quantity deducted: 1  
[2026-06-18 17:55:45] production.INFO: New stock: 168  
[2026-06-18 17:55:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781798146447"} 
[2026-06-18 18:10:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781799037317","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"81.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T13:55:31.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 18:10:37] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-18 18:10:37] production.INFO: Old stock: 81.00  
[2026-06-18 18:10:37] production.INFO: Quantity deducted: 1  
[2026-06-18 18:10:37] production.INFO: New stock: 80  
[2026-06-18 18:10:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781799037317"} 
[2026-06-18 18:38:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781800707640","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":292,"product_id":292,"name":"EROS 10 (Tadalafil 10mg)","sku":"1262","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":4,"subtotal":10000,"product":{"id":292,"name":"EROS 10 (Tadalafil 10mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"40.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1262","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-03-06T00:50:59.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 18:38:28] production.INFO: Stock deduction for product: EROS 10 (Tadalafil 10mg)  
[2026-06-18 18:38:28] production.INFO: Old stock: 40.00  
[2026-06-18 18:38:28] production.INFO: Quantity deducted: 4  
[2026-06-18 18:38:28] production.INFO: New stock: 36  
[2026-06-18 18:38:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781800707640"} 
[2026-06-18 18:40:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781800842920","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"30.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T14:24:06.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 18:40:43] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-06-18 18:40:43] production.INFO: Old stock: 30.00  
[2026-06-18 18:40:43] production.INFO: Quantity deducted: 1  
[2026-06-18 18:40:43] production.INFO: New stock: 29  
[2026-06-18 18:40:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781800842920"} 
[2026-06-18 18:41:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781800881383","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"46.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T14:40:50.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 18:41:20] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-18 18:41:20] production.INFO: Old stock: 46.00  
[2026-06-18 18:41:20] production.INFO: Quantity deducted: 1  
[2026-06-18 18:41:20] production.INFO: New stock: 45  
[2026-06-18 18:41:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781800881383"} 
[2026-06-18 18:45:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781801119215","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"223.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T16:48:13.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 18:45:19] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-18 18:45:19] production.INFO: Old stock: 223.00  
[2026-06-18 18:45:19] production.INFO: Quantity deducted: 2  
[2026-06-18 18:45:19] production.INFO: New stock: 221  
[2026-06-18 18:45:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781801119215"} 
[2026-06-18 19:17:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781803074306","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"47.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-17T18:01:49.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 19:17:54] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-18 19:17:54] production.INFO: Old stock: 47.00  
[2026-06-18 19:17:54] production.INFO: Quantity deducted: 1  
[2026-06-18 19:17:54] production.INFO: New stock: 46  
[2026-06-18 19:17:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781803074306"} 
[2026-06-18 19:20:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781803220145","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-06-13T14:18:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 19:20:20] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-06-18 19:20:20] production.INFO: Old stock: 13.00  
[2026-06-18 19:20:20] production.INFO: Quantity deducted: 2  
[2026-06-18 19:20:20] production.INFO: New stock: 11  
[2026-06-18 19:20:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781803220145"} 
[2026-06-18 19:41:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781804488486","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":212,"product_id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","sku":"0732","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"4.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0732","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-13T08:48:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 19:41:27] production.INFO: Stock deduction for product: DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml  
[2026-06-18 19:41:27] production.INFO: Old stock: 4.00  
[2026-06-18 19:41:27] production.INFO: Quantity deducted: 1  
[2026-06-18 19:41:27] production.INFO: New stock: 3  
[2026-06-18 19:41:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781804488486"} 
[2026-06-18 20:10:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781806235490","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"45.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T16:41:20.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":10,"subtotal":3000,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"357.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T13:03:54.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-18 20:10:34] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-18 20:10:34] production.INFO: Old stock: 45.00  
[2026-06-18 20:10:34] production.INFO: Quantity deducted: 1  
[2026-06-18 20:10:34] production.INFO: New stock: 44  
[2026-06-18 20:10:34] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-18 20:10:34] production.INFO: Old stock: 357.00  
[2026-06-18 20:10:34] production.INFO: Quantity deducted: 10  
[2026-06-18 20:10:34] production.INFO: New stock: 347  
[2026-06-18 20:10:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781806235490"} 
[2026-06-19 07:54:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781848498667","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"53.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T15:08:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-19 07:54:58] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-19 07:54:58] production.INFO: Old stock: 53.00  
[2026-06-19 07:54:58] production.INFO: Quantity deducted: 1  
[2026-06-19 07:54:58] production.INFO: New stock: 52  
[2026-06-19 07:54:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781848498667"} 
[2026-06-19 08:39:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781851150052","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":728,"product_id":728,"name":"Tranexamic Acid 500mg Tablet","sku":"3365","price":"14000.00","selling_price":"14000.00","purchase_price":"5700.00","quantity":1,"subtotal":14000,"product":{"id":728,"name":"Tranexamic Acid 500mg Tablet","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5700.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3365","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T17:47:31.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 08:39:09] production.INFO: Stock deduction for product: Tranexamic Acid 500mg Tablet  
[2026-06-19 08:39:09] production.INFO: Old stock: 11.00  
[2026-06-19 08:39:09] production.INFO: Quantity deducted: 1  
[2026-06-19 08:39:09] production.INFO: New stock: 10  
[2026-06-19 08:39:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781851150052"} 
[2026-06-19 08:40:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781851217028","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-10T08:00:50.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-14T10:50:36.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-19 08:40:16] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-19 08:40:16] production.INFO: Old stock: 20.00  
[2026-06-19 08:40:16] production.INFO: Quantity deducted: 1  
[2026-06-19 08:40:16] production.INFO: New stock: 19  
[2026-06-19 08:40:16] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-19 08:40:16] production.INFO: Old stock: 21.00  
[2026-06-19 08:40:16] production.INFO: Quantity deducted: 1  
[2026-06-19 08:40:16] production.INFO: New stock: 20  
[2026-06-19 08:40:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781851217028"} 
[2026-06-19 09:39:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781854753737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"80.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T16:10:37.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 09:39:12] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-19 09:39:12] production.INFO: Old stock: 80.00  
[2026-06-19 09:39:12] production.INFO: Quantity deducted: 1  
[2026-06-19 09:39:12] production.INFO: New stock: 79  
[2026-06-19 09:39:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781854753737"} 
[2026-06-19 09:43:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781855003424","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T09:44:19.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 09:43:23] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-19 09:43:23] production.INFO: Old stock: 7.00  
[2026-06-19 09:43:23] production.INFO: Quantity deducted: 1  
[2026-06-19 09:43:23] production.INFO: New stock: 6  
[2026-06-19 09:43:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781855003424"} 
[2026-06-19 10:11:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781856675051","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":464,"product_id":464,"name":"IBUT-200 (Ibuprofen 200mg)","sku":"3101","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":1,"subtotal":500,"product":{"id":464,"name":"IBUT-200 (Ibuprofen 200mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3101","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-28T08:57:27.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 10:11:14] production.INFO: Stock deduction for product: IBUT-200 (Ibuprofen 200mg)  
[2026-06-19 10:11:14] production.INFO: Old stock: 22.00  
[2026-06-19 10:11:14] production.INFO: Quantity deducted: 1  
[2026-06-19 10:11:14] production.INFO: New stock: 21  
[2026-06-19 10:11:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781856675051"} 
[2026-06-19 11:24:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781861098749","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":10,"subtotal":5000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"311.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T15:09:52.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 11:24:58] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-19 11:24:58] production.INFO: Old stock: 311.00  
[2026-06-19 11:24:58] production.INFO: Quantity deducted: 10  
[2026-06-19 11:24:58] production.INFO: New stock: 301  
[2026-06-19 11:24:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781861098749"} 
[2026-06-19 11:50:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781862612209","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"162.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T17:43:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 11:50:11] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-19 11:50:11] production.INFO: Old stock: 162.00  
[2026-06-19 11:50:11] production.INFO: Quantity deducted: 1  
[2026-06-19 11:50:11] production.INFO: New stock: 161  
[2026-06-19 11:50:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781862612209"} 
[2026-06-19 11:52:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781862733768","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":99,"product_id":99,"name":"BECLOMIN CREAM, 15g","sku":"0695","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":99,"name":"BECLOMIN CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"23.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0695","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-16T17:33:15.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 11:52:12] production.INFO: Stock deduction for product: BECLOMIN CREAM, 15g  
[2026-06-19 11:52:12] production.INFO: Old stock: 23.00  
[2026-06-19 11:52:12] production.INFO: Quantity deducted: 1  
[2026-06-19 11:52:12] production.INFO: New stock: 22  
[2026-06-19 11:52:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781862733768"} 
[2026-06-19 12:16:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781864192595","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"58.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T14:41:33.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 12:16:31] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-19 12:16:31] production.INFO: Old stock: 58.00  
[2026-06-19 12:16:31] production.INFO: Quantity deducted: 1  
[2026-06-19 12:16:31] production.INFO: New stock: 57  
[2026-06-19 12:16:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781864192595"} 
[2026-06-19 12:26:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781864811258","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"18.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T16:09:05.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"181.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T11:23:55.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 12:26:50] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-19 12:26:50] production.INFO: Old stock: 18.00  
[2026-06-19 12:26:50] production.INFO: Quantity deducted: 2  
[2026-06-19 12:26:50] production.INFO: New stock: 16  
[2026-06-19 12:26:50] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-19 12:26:50] production.INFO: Old stock: 181.00  
[2026-06-19 12:26:50] production.INFO: Quantity deducted: 1  
[2026-06-19 12:26:50] production.INFO: New stock: 180  
[2026-06-19 12:26:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781864811258"} 
[2026-06-19 13:14:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781867688961","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":3,"subtotal":33000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"16.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T10:26:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 13:14:48] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-19 13:14:48] production.INFO: Old stock: 16.00  
[2026-06-19 13:14:48] production.INFO: Quantity deducted: 3  
[2026-06-19 13:14:48] production.INFO: New stock: 13  
[2026-06-19 13:14:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781867688961"} 
[2026-06-19 13:16:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781867781440","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":230,"product_id":230,"name":"Dental Floss (zhuyusheng)","sku":"1255","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":230,"name":"Dental Floss (zhuyusheng)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"22.00","stock":"28.00","product_type":"Single","tax":null,"sku":"1255","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-25T12:07:14.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 13:16:20] production.INFO: Stock deduction for product: Dental Floss (zhuyusheng)  
[2026-06-19 13:16:20] production.INFO: Old stock: 22.00  
[2026-06-19 13:16:20] production.INFO: Quantity deducted: 1  
[2026-06-19 13:16:20] production.INFO: New stock: 21  
[2026-06-19 13:16:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781867781440"} 
[2026-06-19 13:27:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781868479894","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T05:52:35.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 13:27:59] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-19 13:27:59] production.INFO: Old stock: 46.00  
[2026-06-19 13:27:59] production.INFO: Quantity deducted: 1  
[2026-06-19 13:27:59] production.INFO: New stock: 45  
[2026-06-19 13:27:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781868479894"} 
[2026-06-19 13:47:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781869624707","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":2,"subtotal":2000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"79.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T07:39:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 13:47:03] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-19 13:47:03] production.INFO: Old stock: 79.00  
[2026-06-19 13:47:03] production.INFO: Quantity deducted: 2  
[2026-06-19 13:47:03] production.INFO: New stock: 77  
[2026-06-19 13:47:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781869624707"} 
[2026-06-19 14:10:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781871057702","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":2,"subtotal":12000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T11:27:59.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 14:10:57] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-19 14:10:57] production.INFO: Old stock: 45.00  
[2026-06-19 14:10:57] production.INFO: Quantity deducted: 2  
[2026-06-19 14:10:57] production.INFO: New stock: 43  
[2026-06-19 14:10:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781871057702"} 
[2026-06-19 14:35:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781872556681","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"52.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T05:54:58.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 14:35:55] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-19 14:35:55] production.INFO: Old stock: 52.00  
[2026-06-19 14:35:55] production.INFO: Quantity deducted: 1  
[2026-06-19 14:35:55] production.INFO: New stock: 51  
[2026-06-19 14:35:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781872556681"} 
[2026-06-19 14:57:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781873843670","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":4,"subtotal":14000,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"15.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-14T15:37:16.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 14:57:23] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-06-19 14:57:23] production.INFO: Old stock: 15.00  
[2026-06-19 14:57:23] production.INFO: Quantity deducted: 4  
[2026-06-19 14:57:23] production.INFO: New stock: 11  
[2026-06-19 14:57:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781873843670"} 
[2026-06-19 15:27:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781875637391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":10,"subtotal":5000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"60.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-18T14:55:50.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 15:27:18] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-19 15:27:18] production.INFO: Old stock: 60.00  
[2026-06-19 15:27:18] production.INFO: Quantity deducted: 10  
[2026-06-19 15:27:18] production.INFO: New stock: 50  
[2026-06-19 15:27:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781875637391"} 
[2026-06-19 16:09:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781878163602","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":205,"product_id":205,"name":"DAMPHOS SUPOSITORIES","sku":"0766","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":205,"name":"DAMPHOS SUPOSITORIES","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"7","brand_id":"78","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"5.00","stock":"6.00","product_type":"Single","tax":null,"sku":"0766","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-17T09:18:23.000000Z","brand":{"id":78,"name":"UNOSOURCE","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 16:09:25] production.INFO: Stock deduction for product: DAMPHOS SUPOSITORIES  
[2026-06-19 16:09:25] production.INFO: Old stock: 5.00  
[2026-06-19 16:09:25] production.INFO: Quantity deducted: 1  
[2026-06-19 16:09:25] production.INFO: New stock: 4  
[2026-06-19 16:09:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781878163602"} 
[2026-06-19 16:14:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781878476241","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"51.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T12:35:55.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 16:14:38] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-19 16:14:38] production.INFO: Old stock: 51.00  
[2026-06-19 16:14:38] production.INFO: Quantity deducted: 1  
[2026-06-19 16:14:38] production.INFO: New stock: 50  
[2026-06-19 16:14:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781878476241"} 
[2026-06-19 16:51:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781880675611","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"39.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-18T14:25:39.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"27.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T10:38:05.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 16:51:16] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-19 16:51:16] production.INFO: Old stock: 39.00  
[2026-06-19 16:51:16] production.INFO: Quantity deducted: 1  
[2026-06-19 16:51:16] production.INFO: New stock: 38  
[2026-06-19 16:51:16] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-19 16:51:16] production.INFO: Old stock: 27.00  
[2026-06-19 16:51:16] production.INFO: Quantity deducted: 1  
[2026-06-19 16:51:16] production.INFO: New stock: 26  
[2026-06-19 16:51:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781880675611"} 
[2026-06-19 17:01:48] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781881305408","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":528,"product_id":528,"name":"LOSARTAN POTASSIUM","sku":"3165","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":528,"name":"LOSARTAN POTASSIUM","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"88.00","stock":"88.00","product_type":"Single","tax":null,"sku":"3165","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T12:57:32.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":1,"subtotal":800,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"33.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-12T09:19:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"96.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-04T15:24:45.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-19 17:01:48] production.INFO: Stock deduction for product: LOSARTAN POTASSIUM  
[2026-06-19 17:01:48] production.INFO: Old stock: 88.00  
[2026-06-19 17:01:48] production.INFO: Quantity deducted: 1  
[2026-06-19 17:01:48] production.INFO: New stock: 87  
[2026-06-19 17:01:48] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-06-19 17:01:48] production.INFO: Old stock: 33.00  
[2026-06-19 17:01:48] production.INFO: Quantity deducted: 1  
[2026-06-19 17:01:48] production.INFO: New stock: 32  
[2026-06-19 17:01:48] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-19 17:01:48] production.INFO: Old stock: 96.00  
[2026-06-19 17:01:48] production.INFO: Quantity deducted: 1  
[2026-06-19 17:01:48] production.INFO: New stock: 95  
[2026-06-19 17:01:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781881305408"} 
[2026-06-19 17:08:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781881710199","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":1,"subtotal":500,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"221.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T16:45:19.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 17:08:33] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-19 17:08:33] production.INFO: Old stock: 221.00  
[2026-06-19 17:08:33] production.INFO: Quantity deducted: 1  
[2026-06-19 17:08:33] production.INFO: New stock: 220  
[2026-06-19 17:08:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781881710199"} 
[2026-06-19 17:18:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781882324341","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":2,"subtotal":6000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"26.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T18:18:20.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 17:18:45] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-19 17:18:45] production.INFO: Old stock: 26.00  
[2026-06-19 17:18:45] production.INFO: Quantity deducted: 2  
[2026-06-19 17:18:45] production.INFO: New stock: 24  
[2026-06-19 17:18:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781882324341"} 
[2026-06-19 17:20:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781882455069","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"5.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T13:54:14.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 17:20:55] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-19 17:20:55] production.INFO: Old stock: 5.00  
[2026-06-19 17:20:55] production.INFO: Quantity deducted: 1  
[2026-06-19 17:20:55] production.INFO: New stock: 4  
[2026-06-19 17:20:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781882455069"} 
[2026-06-19 17:27:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781882832715","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"8.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T16:48:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 17:27:13] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-19 17:27:13] production.INFO: Old stock: 8.00  
[2026-06-19 17:27:13] production.INFO: Quantity deducted: 1  
[2026-06-19 17:27:13] production.INFO: New stock: 7  
[2026-06-19 17:27:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781882832715"} 
[2026-06-19 17:31:17] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781883076323","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":224,"product_id":224,"name":"Delased Dry Cough (Syrup)","sku":"1161","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":224,"name":"Delased Dry Cough (Syrup)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"31","brand_id":"9","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"2.00","stock":"2.00","product_type":"Single","tax":null,"sku":"1161","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:42:37.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"347.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T18:10:34.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 17:31:17] production.INFO: Stock deduction for product: Delased Dry Cough (Syrup)  
[2026-06-19 17:31:17] production.INFO: Old stock: 2.00  
[2026-06-19 17:31:17] production.INFO: Quantity deducted: 1  
[2026-06-19 17:31:17] production.INFO: New stock: 1  
[2026-06-19 17:31:17] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-19 17:31:17] production.INFO: Old stock: 347.00  
[2026-06-19 17:31:17] production.INFO: Quantity deducted: 3  
[2026-06-19 17:31:17] production.INFO: New stock: 344  
[2026-06-19 17:31:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781883076323"} 
[2026-06-19 17:34:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781883240082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"4.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T15:20:55.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-19 17:34:01] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-19 17:34:01] production.INFO: Old stock: 4.00  
[2026-06-19 17:34:01] production.INFO: Quantity deducted: 1  
[2026-06-19 17:34:01] production.INFO: New stock: 3  
[2026-06-19 17:34:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781883240082"} 
[2026-06-19 17:57:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781884652934","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":568,"product_id":568,"name":"MOXACIL (Amoxicillin 125mg/5ml)","sku":"3205","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":568,"name":"MOXACIL (Amoxicillin 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"10","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3205","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-18T13:17:28.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":897,"product_id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","sku":"PRD-00897","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00897","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:10:22.000000Z","updated_at":"2026-06-13T15:33:34.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 17:57:34] production.INFO: Stock deduction for product: MOXACIL (Amoxicillin 125mg/5ml)  
[2026-06-19 17:57:34] production.INFO: Old stock: 2.00  
[2026-06-19 17:57:34] production.INFO: Quantity deducted: 1  
[2026-06-19 17:57:34] production.INFO: New stock: 1  
[2026-06-19 17:57:34] production.INFO: Stock deduction for product: Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL  
[2026-06-19 17:57:34] production.INFO: Old stock: 8.00  
[2026-06-19 17:57:34] production.INFO: Quantity deducted: 1  
[2026-06-19 17:57:34] production.INFO: New stock: 7  
[2026-06-19 17:57:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781884652934"} 
[2026-06-19 18:12:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781885574571","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"15.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-18T13:17:28.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 18:12:55] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-06-19 18:12:55] production.INFO: Old stock: 15.00  
[2026-06-19 18:12:55] production.INFO: Quantity deducted: 1  
[2026-06-19 18:12:55] production.INFO: New stock: 14  
[2026-06-19 18:12:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781885574571"} 
[2026-06-19 18:13:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781885585243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"40.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-14T08:39:46.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 18:13:05] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-19 18:13:05] production.INFO: Old stock: 40.00  
[2026-06-19 18:13:05] production.INFO: Quantity deducted: 1  
[2026-06-19 18:13:05] production.INFO: New stock: 39  
[2026-06-19 18:13:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781885585243"} 
[2026-06-19 18:22:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781886145766","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"77.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T11:47:03.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 18:22:26] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-19 18:22:26] production.INFO: Old stock: 77.00  
[2026-06-19 18:22:26] production.INFO: Quantity deducted: 1  
[2026-06-19 18:22:26] production.INFO: New stock: 76  
[2026-06-19 18:22:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781886145766"} 
[2026-06-19 18:24:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781886280806","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":796,"product_id":796,"name":"COMIT-50 (Sildenafil 50mg tablets)","sku":"0751","price":"3500.00","selling_price":"3500.00","purchase_price":"1800.00","quantity":1,"subtotal":3500,"product":{"id":796,"name":"COMIT-50 (Sildenafil 50mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0751","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-24T02:24:53.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 18:24:42] production.INFO: Stock deduction for product: COMIT-50 (Sildenafil 50mg tablets)  
[2026-06-19 18:24:42] production.INFO: Old stock: 15.00  
[2026-06-19 18:24:42] production.INFO: Quantity deducted: 1  
[2026-06-19 18:24:42] production.INFO: New stock: 14  
[2026-06-19 18:24:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781886280806"} 
[2026-06-19 18:44:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781887456826","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"161.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T09:50:11.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-19 18:44:19] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-06-19 18:44:19] production.INFO: Old stock: 161.00  
[2026-06-19 18:44:19] production.INFO: Quantity deducted: 1  
[2026-06-19 18:44:19] production.INFO: New stock: 160  
[2026-06-19 18:44:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781887456826"} 
[2026-06-19 18:49:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781887771689","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"220.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T15:08:33.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 18:49:33] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-19 18:49:33] production.INFO: Old stock: 220.00  
[2026-06-19 18:49:33] production.INFO: Quantity deducted: 2  
[2026-06-19 18:49:33] production.INFO: New stock: 218  
[2026-06-19 18:49:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781887771689"} 
[2026-06-19 19:07:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781888877885","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"31.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-17T07:29:08.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-19 19:07:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-19 19:07:59] production.INFO: Old stock: 31.00  
[2026-06-19 19:07:59] production.INFO: Quantity deducted: 1  
[2026-06-19 19:07:59] production.INFO: New stock: 30  
[2026-06-19 19:07:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781888877885"} 
[2026-06-19 19:27:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781890077121","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"39.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-19T16:13:05.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 19:27:58] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-19 19:27:58] production.INFO: Old stock: 39.00  
[2026-06-19 19:27:58] production.INFO: Quantity deducted: 1  
[2026-06-19 19:27:58] production.INFO: New stock: 38  
[2026-06-19 19:27:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781890077121"} 
[2026-06-19 19:38:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781890682246","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":474,"product_id":474,"name":"KAMAGRA ORAL JELLY 50mg","sku":"3111","price":"5000.00","selling_price":"5000.00","purchase_price":"2600.00","quantity":2,"subtotal":10000,"product":{"id":474,"name":"KAMAGRA ORAL JELLY 50mg","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3111","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T12:30:33.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-19 19:38:03] production.INFO: Stock deduction for product: KAMAGRA ORAL JELLY 50mg  
[2026-06-19 19:38:03] production.INFO: Old stock: 8.00  
[2026-06-19 19:38:03] production.INFO: Quantity deducted: 2  
[2026-06-19 19:38:03] production.INFO: New stock: 6  
[2026-06-19 19:38:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781890682246"} 
[2026-06-19 20:51:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781895093475","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"46.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-18T14:24:06.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-19 20:51:35] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-19 20:51:35] production.INFO: Old stock: 46.00  
[2026-06-19 20:51:35] production.INFO: Quantity deducted: 1  
[2026-06-19 20:51:35] production.INFO: New stock: 45  
[2026-06-19 20:51:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781895093475"} 
[2026-06-20 08:28:52] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1781936931282","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":147,"product_id":147,"name":"Cafemol Peads","sku":"1179","price":"300.00","selling_price":"300.00","purchase_price":"79.00","quantity":5,"subtotal":1500,"product":{"id":147,"name":"Cafemol Peads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"79.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"49.00","stock":"79.00","product_type":"Single","tax":null,"sku":"1179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-01T15:12:19.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"2.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-06-18T13:03:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":568,"product_id":568,"name":"MOXACIL (Amoxicillin 125mg/5ml)","sku":"3205","price":"5000.00","selling_price":"5000.00","purchase_price":"2200.00","quantity":1,"subtotal":5000,"product":{"id":568,"name":"MOXACIL (Amoxicillin 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"10","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3205","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T15:57:34.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 08:28:52] production.INFO: Stock deduction for product: Cafemol Peads  
[2026-06-20 08:28:52] production.INFO: Old stock: 49.00  
[2026-06-20 08:28:52] production.INFO: Quantity deducted: 5  
[2026-06-20 08:28:52] production.INFO: New stock: 44  
[2026-06-20 08:28:52] production.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-06-20 08:28:52] production.INFO: Old stock: 2.00  
[2026-06-20 08:28:52] production.INFO: Quantity deducted: 1  
[2026-06-20 08:28:52] production.INFO: New stock: 1  
[2026-06-20 08:28:52] production.INFO: Stock deduction for product: MOXACIL (Amoxicillin 125mg/5ml)  
[2026-06-20 08:28:52] production.INFO: Old stock: 1.00  
[2026-06-20 08:28:52] production.INFO: Quantity deducted: 1  
[2026-06-20 08:28:52] production.INFO: New stock: 0  
[2026-06-20 08:28:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781936931282"} 
[2026-06-20 08:29:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781936945433","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"28.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T06:56:04.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 08:29:05] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-06-20 08:29:05] production.INFO: Old stock: 28.00  
[2026-06-20 08:29:05] production.INFO: Quantity deducted: 1  
[2026-06-20 08:29:05] production.INFO: New stock: 27  
[2026-06-20 08:29:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781936945433"} 
[2026-06-20 09:53:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781941986805","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":2,"subtotal":2000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"76.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T16:22:26.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 09:53:10] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-20 09:53:10] production.INFO: Old stock: 76.00  
[2026-06-20 09:53:10] production.INFO: Quantity deducted: 2  
[2026-06-20 09:53:10] production.INFO: New stock: 74  
[2026-06-20 09:53:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781941986805"} 
[2026-06-20 10:22:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781943772678","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":849,"product_id":849,"name":"Nifedipine 20mg Sustained Release","sku":"PRD-00849","price":"1500.00","selling_price":"1500.00","purchase_price":"500.00","quantity":2,"subtotal":3000,"product":{"id":849,"name":"Nifedipine 20mg Sustained Release","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1500.00","current_stock":"20.00","stock":"30.00","product_type":"Single","tax":null,"sku":"PRD-00849","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-05","last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:43:40.000000Z","updated_at":"2026-06-04T11:41:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":2,"subtotal":2000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T13:34:12.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 10:22:54] production.INFO: Stock deduction for product: Nifedipine 20mg Sustained Release  
[2026-06-20 10:22:54] production.INFO: Old stock: 20.00  
[2026-06-20 10:22:54] production.INFO: Quantity deducted: 2  
[2026-06-20 10:22:54] production.INFO: New stock: 18  
[2026-06-20 10:22:54] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-06-20 10:22:54] production.INFO: Old stock: 22.00  
[2026-06-20 10:22:54] production.INFO: Quantity deducted: 2  
[2026-06-20 10:22:54] production.INFO: New stock: 20  
[2026-06-20 10:22:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781943772678"} 
[2026-06-20 10:39:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781944763122","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"30.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-16T16:31:23.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 10:39:24] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-20 10:39:24] production.INFO: Old stock: 30.00  
[2026-06-20 10:39:24] production.INFO: Quantity deducted: 1  
[2026-06-20 10:39:24] production.INFO: New stock: 29  
[2026-06-20 10:39:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781944763122"} 
[2026-06-20 11:08:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781946506451","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"4500.00","selling_price":"4500.00","purchase_price":"2650.00","quantity":1,"subtotal":4500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-17T15:05:49.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 11:08:27] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-20 11:08:27] production.INFO: Old stock: 12.00  
[2026-06-20 11:08:27] production.INFO: Quantity deducted: 1  
[2026-06-20 11:08:27] production.INFO: New stock: 11  
[2026-06-20 11:08:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781946506451"} 
[2026-06-20 11:25:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781947548495","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":2,"subtotal":5000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-14T16:53:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-20 11:25:49] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-20 11:25:49] production.INFO: Old stock: 11.00  
[2026-06-20 11:25:49] production.INFO: Quantity deducted: 2  
[2026-06-20 11:25:49] production.INFO: New stock: 9  
[2026-06-20 11:25:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781947548495"} 
[2026-06-20 11:42:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781948555939","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"133.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-11T14:17:57.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 11:42:36] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-20 11:42:36] production.INFO: Old stock: 133.00  
[2026-06-20 11:42:36] production.INFO: Quantity deducted: 1  
[2026-06-20 11:42:36] production.INFO: New stock: 132  
[2026-06-20 11:42:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781948555939"} 
[2026-06-20 11:51:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781949059913","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"301.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-19T09:24:58.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 11:51:01] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-20 11:51:01] production.INFO: Old stock: 301.00  
[2026-06-20 11:51:01] production.INFO: Quantity deducted: 4  
[2026-06-20 11:51:01] production.INFO: New stock: 297  
[2026-06-20 11:51:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781949059913"} 
[2026-06-20 12:06:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781950000873","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":61,"product_id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","sku":"0674","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":3,"subtotal":4500,"product":{"id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"35.00","product_type":"Single","tax":null,"sku":"0674","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-10T15:44:05.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"95.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-19T15:01:48.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 12:06:43] production.INFO: Stock deduction for product: AMLODIPINE 5MG (AMLODAWA) 10s  
[2026-06-20 12:06:43] production.INFO: Old stock: 31.00  
[2026-06-20 12:06:43] production.INFO: Quantity deducted: 3  
[2026-06-20 12:06:43] production.INFO: New stock: 28  
[2026-06-20 12:06:43] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-20 12:06:43] production.INFO: Old stock: 95.00  
[2026-06-20 12:06:43] production.INFO: Quantity deducted: 1  
[2026-06-20 12:06:43] production.INFO: New stock: 94  
[2026-06-20 12:06:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781950000873"} 
[2026-06-20 12:07:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781950064242","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"180.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-19T10:26:50.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 12:07:46] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-20 12:07:46] production.INFO: Old stock: 180.00  
[2026-06-20 12:07:46] production.INFO: Quantity deducted: 1  
[2026-06-20 12:07:46] production.INFO: New stock: 179  
[2026-06-20 12:07:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781950064242"} 
[2026-06-20 12:08:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781950101625","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":252,"product_id":252,"name":"Diclofenac SR","sku":"1381","price":"1000.00","selling_price":"1000.00","purchase_price":"450.00","quantity":2,"subtotal":2000,"product":{"id":252,"name":"Diclofenac SR","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"24.00","stock":"24.00","product_type":"Single","tax":null,"sku":"1381","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-25T04:35:25.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 12:08:23] production.INFO: Stock deduction for product: Diclofenac SR  
[2026-06-20 12:08:23] production.INFO: Old stock: 24.00  
[2026-06-20 12:08:23] production.INFO: Quantity deducted: 2  
[2026-06-20 12:08:23] production.INFO: New stock: 22  
[2026-06-20 12:08:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781950101625"} 
[2026-06-20 12:18:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781950725055","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":885,"product_id":885,"name":"Triphen 4 flu","sku":"PRD-00885","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":885,"name":"Triphen 4 flu","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"11000.00","last_purchase_price":"11000.00","selling_price":"22000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00885","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-17","last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:35:55.000000Z","updated_at":"2026-06-18T07:20:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":185,"product_id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","sku":"0655","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0655","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-05-29T04:23:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 12:18:46] production.INFO: Stock deduction for product: Triphen 4 flu  
[2026-06-20 12:18:46] production.INFO: Old stock: 4.00  
[2026-06-20 12:18:46] production.INFO: Quantity deducted: 1  
[2026-06-20 12:18:46] production.INFO: New stock: 3  
[2026-06-20 12:18:46] production.INFO: Stock deduction for product: CLAMOXIN 625MG Tablets (AUGMENTIN)  
[2026-06-20 12:18:46] production.INFO: Old stock: 5.00  
[2026-06-20 12:18:46] production.INFO: Quantity deducted: 1  
[2026-06-20 12:18:46] production.INFO: New stock: 4  
[2026-06-20 12:18:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781950725055"} 
[2026-06-20 12:41:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781952094438","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-09T15:10:59.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 12:41:36] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-06-20 12:41:36] production.INFO: Old stock: 11.00  
[2026-06-20 12:41:36] production.INFO: Quantity deducted: 1  
[2026-06-20 12:41:36] production.INFO: New stock: 10  
[2026-06-20 12:41:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781952094438"} 
[2026-06-20 12:42:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781952126118","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":72,"product_id":72,"name":"Antagit DS Gel 170 ml","sku":"1183","price":"9000.00","selling_price":"9000.00","purchase_price":"4250.00","quantity":1,"subtotal":9000,"product":{"id":72,"name":"Antagit DS Gel 170 ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4250.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"1.00","stock":"2.00","product_type":"Single","tax":null,"sku":"1183","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-04T12:38:21.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 12:42:06] production.INFO: Stock deduction for product: Antagit DS Gel 170 ml  
[2026-06-20 12:42:06] production.INFO: Old stock: 1.00  
[2026-06-20 12:42:06] production.INFO: Quantity deducted: 1  
[2026-06-20 12:42:06] production.INFO: New stock: 0  
[2026-06-20 12:42:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781952126118"} 
[2026-06-20 12:42:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781952136454","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":27,"product_id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","sku":"0659","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":27,"name":"ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"15.00","stock":"16.00","product_type":"Single","tax":null,"sku":"0659","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-18T10:28:51.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 12:42:16] production.INFO: Stock deduction for product: ACEPAR (ACECLOFENAC100MG/PARACETAMOL 500MG) TABLETS  
[2026-06-20 12:42:16] production.INFO: Old stock: 15.00  
[2026-06-20 12:42:16] production.INFO: Quantity deducted: 1  
[2026-06-20 12:42:16] production.INFO: New stock: 14  
[2026-06-20 12:42:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781952136454"} 
[2026-06-20 14:18:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781957929916","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T16:06:52.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 14:18:50] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-06-20 14:18:50] production.INFO: Old stock: 12.00  
[2026-06-20 14:18:50] production.INFO: Quantity deducted: 1  
[2026-06-20 14:18:50] production.INFO: New stock: 11  
[2026-06-20 14:18:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781957929916"} 
[2026-06-20 14:49:01] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781959740164","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":282,"product_id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","sku":"0800","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":282,"name":"ENALAPRIL MALEATA TABLETS 5MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"8.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0800","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T16:32:41.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"7.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T15:27:13.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 14:49:01] production.INFO: Stock deduction for product: ENALAPRIL MALEATA TABLETS 5MG  
[2026-06-20 14:49:01] production.INFO: Old stock: 8.00  
[2026-06-20 14:49:01] production.INFO: Quantity deducted: 2  
[2026-06-20 14:49:01] production.INFO: New stock: 6  
[2026-06-20 14:49:01] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-20 14:49:01] production.INFO: Old stock: 7.00  
[2026-06-20 14:49:01] production.INFO: Quantity deducted: 1  
[2026-06-20 14:49:01] production.INFO: New stock: 6  
[2026-06-20 14:49:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781959740164"} 
[2026-06-20 15:06:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781960777120","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-20T10:41:36.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 15:06:17] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-06-20 15:06:17] production.INFO: Old stock: 10.00  
[2026-06-20 15:06:17] production.INFO: Quantity deducted: 1  
[2026-06-20 15:06:17] production.INFO: New stock: 9  
[2026-06-20 15:06:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781960777120"} 
[2026-06-20 15:51:49] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1781963509021","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":4,"subtotal":16000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"46.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-18T17:17:54.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":3,"subtotal":6000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"32.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T15:55:45.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":3,"subtotal":3000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-19T06:40:16.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"115.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T17:49:46.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-20 15:51:49] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-20 15:51:49] production.INFO: Old stock: 46.00  
[2026-06-20 15:51:49] production.INFO: Quantity deducted: 4  
[2026-06-20 15:51:49] production.INFO: New stock: 42  
[2026-06-20 15:51:49] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-20 15:51:49] production.INFO: Old stock: 32.00  
[2026-06-20 15:51:49] production.INFO: Quantity deducted: 3  
[2026-06-20 15:51:49] production.INFO: New stock: 29  
[2026-06-20 15:51:49] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-20 15:51:49] production.INFO: Old stock: 20.00  
[2026-06-20 15:51:49] production.INFO: Quantity deducted: 3  
[2026-06-20 15:51:49] production.INFO: New stock: 17  
[2026-06-20 15:51:49] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-20 15:51:49] production.INFO: Old stock: 115.00  
[2026-06-20 15:51:49] production.INFO: Quantity deducted: 1  
[2026-06-20 15:51:49] production.INFO: New stock: 114  
[2026-06-20 15:51:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781963509021"} 
[2026-06-20 15:57:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781963845635","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"50.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-19T13:27:18.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 15:57:26] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-20 15:57:26] production.INFO: Old stock: 50.00  
[2026-06-20 15:57:26] production.INFO: Quantity deducted: 1  
[2026-06-20 15:57:26] production.INFO: New stock: 49  
[2026-06-20 15:57:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781963845635"} 
[2026-06-20 15:57:56] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781963876747","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"344.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T15:31:17.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"373.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T13:03:54.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 15:57:56] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-20 15:57:56] production.INFO: Old stock: 344.00  
[2026-06-20 15:57:56] production.INFO: Quantity deducted: 6  
[2026-06-20 15:57:56] production.INFO: New stock: 338  
[2026-06-20 15:57:56] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-20 15:57:56] production.INFO: Old stock: 373.00  
[2026-06-20 15:57:56] production.INFO: Quantity deducted: 1  
[2026-06-20 15:57:56] production.INFO: New stock: 372  
[2026-06-20 15:57:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781963876747"} 
[2026-06-20 16:14:16] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1781964856295","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T12:18:50.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":430,"product_id":430,"name":"Grand pa","sku":"3067","price":"1000.00","selling_price":"1000.00","purchase_price":"526.00","quantity":1,"subtotal":1000,"product":{"id":430,"name":"Grand pa","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"526.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3067","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T09:13:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"6.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-20T12:49:01.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"338.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T13:57:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"372.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T13:57:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 16:14:16] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-06-20 16:14:16] production.INFO: Old stock: 11.00  
[2026-06-20 16:14:16] production.INFO: Quantity deducted: 1  
[2026-06-20 16:14:16] production.INFO: New stock: 10  
[2026-06-20 16:14:16] production.INFO: Stock deduction for product: Grand pa  
[2026-06-20 16:14:16] production.INFO: Old stock: 9.00  
[2026-06-20 16:14:16] production.INFO: Quantity deducted: 1  
[2026-06-20 16:14:16] production.INFO: New stock: 8  
[2026-06-20 16:14:16] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-20 16:14:16] production.INFO: Old stock: 6.00  
[2026-06-20 16:14:16] production.INFO: Quantity deducted: 1  
[2026-06-20 16:14:16] production.INFO: New stock: 5  
[2026-06-20 16:14:16] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-20 16:14:16] production.INFO: Old stock: 338.00  
[2026-06-20 16:14:16] production.INFO: Quantity deducted: 1  
[2026-06-20 16:14:16] production.INFO: New stock: 337  
[2026-06-20 16:14:16] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-20 16:14:16] production.INFO: Old stock: 372.00  
[2026-06-20 16:14:16] production.INFO: Quantity deducted: 1  
[2026-06-20 16:14:16] production.INFO: New stock: 371  
[2026-06-20 16:14:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781964856295"} 
[2026-06-20 16:20:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781965249349","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"29.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-11T09:59:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 16:20:49] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-20 16:20:49] production.INFO: Old stock: 29.00  
[2026-06-20 16:20:49] production.INFO: Quantity deducted: 1  
[2026-06-20 16:20:49] production.INFO: New stock: 28  
[2026-06-20 16:20:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781965249349"} 
[2026-06-20 16:21:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781965266877","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"4.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-16T15:07:38.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 16:21:06] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-20 16:21:06] production.INFO: Old stock: 4.00  
[2026-06-20 16:21:06] production.INFO: Quantity deducted: 1  
[2026-06-20 16:21:06] production.INFO: New stock: 3  
[2026-06-20 16:21:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781965266877"} 
[2026-06-20 16:27:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781965658100","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"337.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T14:14:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 16:27:37] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-20 16:27:37] production.INFO: Old stock: 337.00  
[2026-06-20 16:27:37] production.INFO: Quantity deducted: 1  
[2026-06-20 16:27:37] production.INFO: New stock: 336  
[2026-06-20 16:27:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781965658100"} 
[2026-06-20 16:34:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781966088930","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":575,"product_id":575,"name":"Multivit G ( Multivitamin Caps)","sku":"3212","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":575,"name":"Multivit G ( Multivitamin Caps)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3212","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-03T13:44:26.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-20 16:34:50] production.INFO: Stock deduction for product: Multivit G ( Multivitamin Caps)  
[2026-06-20 16:34:50] production.INFO: Old stock: 6.00  
[2026-06-20 16:34:50] production.INFO: Quantity deducted: 1  
[2026-06-20 16:34:50] production.INFO: New stock: 5  
[2026-06-20 16:34:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781966088930"} 
[2026-06-20 16:44:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781966687791","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":794,"product_id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","sku":"0752","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"32.00","product_type":"Single","tax":null,"sku":"0752","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-05T18:57:22.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 16:44:48] production.INFO: Stock deduction for product: COMIT-100 (Oral Jelly, Sildenafil 100mg)  
[2026-06-20 16:44:48] production.INFO: Old stock: 28.00  
[2026-06-20 16:44:48] production.INFO: Quantity deducted: 2  
[2026-06-20 16:44:48] production.INFO: New stock: 26  
[2026-06-20 16:44:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781966687791"} 
[2026-06-20 17:11:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781968312080","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":888,"product_id":888,"name":"Eno fruit salt","sku":"PRD-00888","price":"4500.00","selling_price":"4500.00","purchase_price":"2100.00","quantity":4,"subtotal":18000,"product":{"id":888,"name":"Eno fruit salt","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2100.00","last_purchase_price":"2100.00","selling_price":"4500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00888","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:41:42.000000Z","updated_at":"2026-05-26T07:41:42.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"standard_bank"}} 
[2026-06-20 17:11:53] production.INFO: Stock deduction for product: Eno fruit salt  
[2026-06-20 17:11:53] production.INFO: Old stock: 20.00  
[2026-06-20 17:11:53] production.INFO: Quantity deducted: 4  
[2026-06-20 17:11:53] production.INFO: New stock: 16  
[2026-06-20 17:11:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781968312080"} 
[2026-06-20 17:12:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781968335520","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"50.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T14:14:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 17:12:15] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-20 17:12:15] production.INFO: Old stock: 50.00  
[2026-06-20 17:12:15] production.INFO: Quantity deducted: 1  
[2026-06-20 17:12:15] production.INFO: New stock: 49  
[2026-06-20 17:12:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781968335520"} 
[2026-06-20 17:22:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781968940350","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":2,"subtotal":3000,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"28.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-20T14:20:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 17:22:21] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-20 17:22:21] production.INFO: Old stock: 28.00  
[2026-06-20 17:22:21] production.INFO: Quantity deducted: 2  
[2026-06-20 17:22:21] production.INFO: New stock: 26  
[2026-06-20 17:22:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781968940350"} 
[2026-06-20 17:30:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781969458164","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":497,"product_id":497,"name":"Labesten Vaginal Tablets","sku":"3134","price":"2500.00","selling_price":"2500.00","purchase_price":"1080.00","quantity":1,"subtotal":2500,"product":{"id":497,"name":"Labesten Vaginal Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1080.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3134","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-04-09T03:15:58.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 17:30:59] production.INFO: Stock deduction for product: Labesten Vaginal Tablets  
[2026-06-20 17:30:59] production.INFO: Old stock: 4.00  
[2026-06-20 17:30:59] production.INFO: Quantity deducted: 1  
[2026-06-20 17:30:59] production.INFO: New stock: 3  
[2026-06-20 17:30:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781969458164"} 
[2026-06-20 17:32:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781969564163","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"29.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T13:51:49.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 17:32:44] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-20 17:32:44] production.INFO: Old stock: 29.00  
[2026-06-20 17:32:44] production.INFO: Quantity deducted: 1  
[2026-06-20 17:32:44] production.INFO: New stock: 28  
[2026-06-20 17:32:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781969564163"} 
[2026-06-20 17:43:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781970237896","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":667,"product_id":667,"name":"Relcer Gel 180ml","sku":"3304","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":667,"name":"Relcer Gel 180ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3304","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T10:33:58.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 17:43:58] production.INFO: Stock deduction for product: Relcer Gel 180ml  
[2026-06-20 17:43:58] production.INFO: Old stock: 3.00  
[2026-06-20 17:43:58] production.INFO: Quantity deducted: 1  
[2026-06-20 17:43:58] production.INFO: New stock: 2  
[2026-06-20 17:43:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781970237896"} 
[2026-06-20 17:44:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781970281320","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-17T12:15:29.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 17:44:41] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-20 17:44:41] production.INFO: Old stock: 7.00  
[2026-06-20 17:44:41] production.INFO: Quantity deducted: 1  
[2026-06-20 17:44:41] production.INFO: New stock: 6  
[2026-06-20 17:44:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781970281320"} 
[2026-06-20 17:57:58] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1781971077589","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":40,"product_id":40,"name":"Adhesive Plater 5cm","sku":"1168","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":40,"name":"Adhesive Plater 5cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1168","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T10:16:13.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":763,"product_id":763,"name":"Water Plaster","sku":"3400","price":"200.00","selling_price":"200.00","purchase_price":"36.00","quantity":5,"subtotal":1000,"product":{"id":763,"name":"Water Plaster","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"36.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"415.00","stock":"419.00","product_type":"Single","tax":null,"sku":"3400","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-16T16:48:56.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-20 17:57:58] production.INFO: Stock deduction for product: Adhesive Plater 5cm  
[2026-06-20 17:57:58] production.INFO: Old stock: 12.00  
[2026-06-20 17:57:58] production.INFO: Quantity deducted: 1  
[2026-06-20 17:57:58] production.INFO: New stock: 11  
[2026-06-20 17:57:58] production.INFO: Stock deduction for product: Water Plaster  
[2026-06-20 17:57:58] production.INFO: Old stock: 415.00  
[2026-06-20 17:57:58] production.INFO: Quantity deducted: 5  
[2026-06-20 17:57:58] production.INFO: New stock: 410  
[2026-06-20 17:57:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781971077589"} 
[2026-06-20 18:01:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781971270908","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":898,"product_id":898,"name":"Hydrocortisone Cream(Elycort)","sku":"PRD-00898","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":898,"name":"Hydrocortisone Cream(Elycort)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00898","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:20:42.000000Z","updated_at":"2026-06-12T15:50:12.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-20 18:01:11] production.INFO: Stock deduction for product: Hydrocortisone Cream(Elycort)  
[2026-06-20 18:01:11] production.INFO: Old stock: 3.00  
[2026-06-20 18:01:11] production.INFO: Quantity deducted: 1  
[2026-06-20 18:01:11] production.INFO: New stock: 2  
[2026-06-20 18:01:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781971270908"} 
[2026-06-20 18:22:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781972520775","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":910,"product_id":910,"name":"Gantamycin Eye Drop (Getacin)","sku":"PRD-00910","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":910,"name":"Gantamycin Eye Drop (Getacin)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1200.00","last_purchase_price":"1200.00","selling_price":"2500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00910","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-18","created_at":"2026-06-18T14:57:58.000000Z","updated_at":"2026-06-18T14:57:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-20 18:22:00] production.INFO: Stock deduction for product: Gantamycin Eye Drop (Getacin)  
[2026-06-20 18:22:00] production.INFO: Old stock: 10.00  
[2026-06-20 18:22:00] production.INFO: Quantity deducted: 1  
[2026-06-20 18:22:00] production.INFO: New stock: 9  
[2026-06-20 18:22:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781972520775"} 
[2026-06-20 21:00:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1781982052204","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T16:19:41.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-20 21:00:52] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-06-20 21:00:52] production.INFO: Old stock: 32.00  
[2026-06-20 21:00:52] production.INFO: Quantity deducted: 1  
[2026-06-20 21:00:52] production.INFO: New stock: 31  
[2026-06-20 21:00:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1781982052204"} 
[2026-06-21 09:12:36] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782025957721","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":617,"product_id":617,"name":"ovulation (LH) Test Midstream","sku":"3254","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":3,"subtotal":4500,"product":{"id":617,"name":"ovulation (LH) Test Midstream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3254","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-15T06:06:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":168,"product_id":168,"name":"CETLIN (Cetirizine Oral), 60ml","sku":"0728","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":168,"name":"CETLIN (Cetirizine Oral), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"22","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0728","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-15T11:35:35.000000Z","brand":{"id":22,"name":"Calcimin","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 09:12:36] production.INFO: Stock deduction for product: ovulation (LH) Test Midstream  
[2026-06-21 09:12:36] production.INFO: Old stock: 14.00  
[2026-06-21 09:12:36] production.INFO: Quantity deducted: 3  
[2026-06-21 09:12:36] production.INFO: New stock: 11  
[2026-06-21 09:12:36] production.INFO: Stock deduction for product: CETLIN (Cetirizine Oral), 60ml  
[2026-06-21 09:12:36] production.INFO: Old stock: 3.00  
[2026-06-21 09:12:36] production.INFO: Quantity deducted: 1  
[2026-06-21 09:12:36] production.INFO: New stock: 2  
[2026-06-21 09:12:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782025957721"} 
[2026-06-21 10:19:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782029951964","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-17T17:43:22.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-21 10:19:11] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-06-21 10:19:11] production.INFO: Old stock: 10.00  
[2026-06-21 10:19:11] production.INFO: Quantity deducted: 1  
[2026-06-21 10:19:11] production.INFO: New stock: 9  
[2026-06-21 10:19:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782029951964"} 
[2026-06-21 10:57:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782032245072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"17.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-10T10:18:01.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 10:57:24] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-06-21 10:57:24] production.INFO: Old stock: 17.00  
[2026-06-21 10:57:24] production.INFO: Quantity deducted: 1  
[2026-06-21 10:57:24] production.INFO: New stock: 16  
[2026-06-21 10:57:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782032245072"} 
[2026-06-21 11:19:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782033592601","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"51.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-18T14:55:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"49.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-20T13:57:26.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 11:19:52] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-06-21 11:19:52] production.INFO: Old stock: 51.00  
[2026-06-21 11:19:52] production.INFO: Quantity deducted: 1  
[2026-06-21 11:19:52] production.INFO: New stock: 50  
[2026-06-21 11:19:52] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-21 11:19:52] production.INFO: Old stock: 49.00  
[2026-06-21 11:19:52] production.INFO: Quantity deducted: 1  
[2026-06-21 11:19:52] production.INFO: New stock: 48  
[2026-06-21 11:19:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782033592601"} 
[2026-06-21 11:24:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782033889904","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":572,"product_id":572,"name":"MOXILEB-CV DRY SYRUP (Amoxicillin & Potassium Clavulanate)","sku":"3209","price":"10000.00","selling_price":"10000.00","purchase_price":"4950.00","quantity":1,"subtotal":10000,"product":{"id":572,"name":"MOXILEB-CV DRY SYRUP (Amoxicillin & Potassium Clavulanate)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"4950.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3209","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-06T05:05:49.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":460,"product_id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","sku":"3097","price":"4500.00","selling_price":"4500.00","purchase_price":"1800.00","quantity":1,"subtotal":4500,"product":{"id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"10","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"5.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3097","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-14T17:37:51.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 11:24:49] production.INFO: Stock deduction for product: MOXILEB-CV DRY SYRUP (Amoxicillin & Potassium Clavulanate)  
[2026-06-21 11:24:49] production.INFO: Old stock: 3.00  
[2026-06-21 11:24:49] production.INFO: Quantity deducted: 1  
[2026-06-21 11:24:49] production.INFO: New stock: 2  
[2026-06-21 11:24:49] production.INFO: Stock deduction for product: IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml  
[2026-06-21 11:24:49] production.INFO: Old stock: 5.00  
[2026-06-21 11:24:49] production.INFO: Quantity deducted: 1  
[2026-06-21 11:24:49] production.INFO: New stock: 4  
[2026-06-21 11:24:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782033889904"} 
[2026-06-21 11:25:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782033931288","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":3,"subtotal":1500,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"218.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T16:49:33.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 11:25:29] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-21 11:25:29] production.INFO: Old stock: 218.00  
[2026-06-21 11:25:29] production.INFO: Quantity deducted: 3  
[2026-06-21 11:25:29] production.INFO: New stock: 215  
[2026-06-21 11:25:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782033931288"} 
[2026-06-21 11:52:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782035551079","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":621,"product_id":621,"name":"PAMAGIN C SYRUP, 60ml","sku":"3258","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":621,"name":"PAMAGIN C SYRUP, 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"20","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3258","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-30T05:21:09.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 11:52:30] production.INFO: Stock deduction for product: PAMAGIN C SYRUP, 60ml  
[2026-06-21 11:52:30] production.INFO: Old stock: 10.00  
[2026-06-21 11:52:30] production.INFO: Quantity deducted: 1  
[2026-06-21 11:52:30] production.INFO: New stock: 9  
[2026-06-21 11:52:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782035551079"} 
[2026-06-21 12:27:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782037663517","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"49.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T15:12:15.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 12:27:43] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 12:27:43] production.INFO: Old stock: 49.00  
[2026-06-21 12:27:43] production.INFO: Quantity deducted: 1  
[2026-06-21 12:27:43] production.INFO: New stock: 48  
[2026-06-21 12:27:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782037663517"} 
[2026-06-21 12:28:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782037690325","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":209,"product_id":209,"name":"Dapzin 5 mg","sku":"1313","price":"20000.00","selling_price":"20000.00","purchase_price":"10100.00","quantity":1,"subtotal":20000,"product":{"id":209,"name":"Dapzin 5 mg","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"7","brand_id":"9","supplier_id":null,"purchase_price":"10100.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"2.00","stock":"3.00","product_type":"Single","tax":null,"sku":"1313","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-03-21T03:37:54.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 12:28:08] production.INFO: Stock deduction for product: Dapzin 5 mg  
[2026-06-21 12:28:08] production.INFO: Old stock: 2.00  
[2026-06-21 12:28:08] production.INFO: Quantity deducted: 1  
[2026-06-21 12:28:08] production.INFO: New stock: 1  
[2026-06-21 12:28:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782037690325"} 
[2026-06-21 12:50:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782039008230","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":569,"product_id":569,"name":"MOXAFORTE CAPSULES (Flucloxacillin 250mg/Amoxicillin 250mg)","sku":"3206","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":569,"name":"MOXAFORTE CAPSULES (Flucloxacillin 250mg/Amoxicillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"11","brand_id":"10","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"6.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3206","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T09:23:14.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-21 12:50:07] production.INFO: Stock deduction for product: MOXAFORTE CAPSULES (Flucloxacillin 250mg/Amoxicillin 250mg)  
[2026-06-21 12:50:07] production.INFO: Old stock: 6.00  
[2026-06-21 12:50:07] production.INFO: Quantity deducted: 1  
[2026-06-21 12:50:07] production.INFO: New stock: 5  
[2026-06-21 12:50:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782039008230"} 
[2026-06-21 13:03:17] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782039797674","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"8000.00","selling_price":"8000.00","purchase_price":"5000.00","quantity":1,"subtotal":8000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T10:32:05.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"371.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T14:14:16.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 13:03:17] production.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-06-21 13:03:17] production.INFO: Old stock: 15.00  
[2026-06-21 13:03:17] production.INFO: Quantity deducted: 1  
[2026-06-21 13:03:17] production.INFO: New stock: 14  
[2026-06-21 13:03:17] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-21 13:03:17] production.INFO: Old stock: 371.00  
[2026-06-21 13:03:17] production.INFO: Quantity deducted: 5  
[2026-06-21 13:03:17] production.INFO: New stock: 366  
[2026-06-21 13:03:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782039797674"} 
[2026-06-21 13:05:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782039907673","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":162,"product_id":162,"name":"CEFIXIME TABLETS 400MG(CACHMAX)","sku":"0724","price":"20000.00","selling_price":"20000.00","purchase_price":"10800.00","quantity":1,"subtotal":20000,"product":{"id":162,"name":"CEFIXIME TABLETS 400MG(CACHMAX)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"10800.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"6.00","stock":"6.00","product_type":"Single","tax":null,"sku":"0724","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-04T07:24:43.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":167,"product_id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","sku":"0729","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"53.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0729","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-12T12:30:08.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 13:05:07] production.INFO: Stock deduction for product: CEFIXIME TABLETS 400MG(CACHMAX)  
[2026-06-21 13:05:07] production.INFO: Old stock: 6.00  
[2026-06-21 13:05:07] production.INFO: Quantity deducted: 1  
[2026-06-21 13:05:07] production.INFO: New stock: 5  
[2026-06-21 13:05:07] production.INFO: Stock deduction for product: CETERIZINE Tablets 10MG (RINACET)  
[2026-06-21 13:05:07] production.INFO: Old stock: 53.00  
[2026-06-21 13:05:07] production.INFO: Quantity deducted: 2  
[2026-06-21 13:05:07] production.INFO: New stock: 51  
[2026-06-21 13:05:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782039907673"} 
[2026-06-21 13:21:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782040861797","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":514,"product_id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","sku":"3151","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":1,"subtotal":500,"product":{"id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3151","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-01T09:52:48.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"48.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-21T09:19:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 13:21:00] production.INFO: Stock deduction for product: LOFNAC (DICLOFENAC 50MG) TABLETS  
[2026-06-21 13:21:00] production.INFO: Old stock: 12.00  
[2026-06-21 13:21:00] production.INFO: Quantity deducted: 1  
[2026-06-21 13:21:00] production.INFO: New stock: 11  
[2026-06-21 13:21:00] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-21 13:21:00] production.INFO: Old stock: 48.00  
[2026-06-21 13:21:00] production.INFO: Quantity deducted: 1  
[2026-06-21 13:21:00] production.INFO: New stock: 47  
[2026-06-21 13:21:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782040861797"} 
[2026-06-21 14:43:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782045793875","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-20T15:44:41.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 14:43:13] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-21 14:43:13] production.INFO: Old stock: 6.00  
[2026-06-21 14:43:13] production.INFO: Quantity deducted: 1  
[2026-06-21 14:43:13] production.INFO: New stock: 5  
[2026-06-21 14:43:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782045793875"} 
[2026-06-21 15:01:30] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782046891110","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-20T09:25:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"45.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T18:51:35.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 15:01:30] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-21 15:01:30] production.INFO: Old stock: 9.00  
[2026-06-21 15:01:30] production.INFO: Quantity deducted: 1  
[2026-06-21 15:01:30] production.INFO: New stock: 8  
[2026-06-21 15:01:30] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-21 15:01:30] production.INFO: Old stock: 45.00  
[2026-06-21 15:01:30] production.INFO: Quantity deducted: 1  
[2026-06-21 15:01:30] production.INFO: New stock: 44  
[2026-06-21 15:01:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782046891110"} 
[2026-06-21 15:02:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782046978637","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"215.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T09:25:29.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 15:02:57] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-21 15:02:57] production.INFO: Old stock: 215.00  
[2026-06-21 15:02:57] production.INFO: Quantity deducted: 2  
[2026-06-21 15:02:57] production.INFO: New stock: 213  
[2026-06-21 15:02:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782046978637"} 
[2026-06-21 15:07:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782047234492","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"9.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-20T13:06:17.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-21 15:07:13] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-06-21 15:07:13] production.INFO: Old stock: 9.00  
[2026-06-21 15:07:13] production.INFO: Quantity deducted: 1  
[2026-06-21 15:07:13] production.INFO: New stock: 8  
[2026-06-21 15:07:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782047234492"} 
[2026-06-21 15:13:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782047604810","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"43.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T12:10:57.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 15:13:24] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-21 15:13:24] production.INFO: Old stock: 43.00  
[2026-06-21 15:13:24] production.INFO: Quantity deducted: 1  
[2026-06-21 15:13:24] production.INFO: New stock: 42  
[2026-06-21 15:13:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782047604810"} 
[2026-06-21 15:14:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782047687866","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"48.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T10:27:43.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":3000},{"method":"airtel_money","amount":1500}]}} 
[2026-06-21 15:19:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782047996168","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":1,"subtotal":500,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"213.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T13:02:57.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 15:19:54] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-21 15:19:54] production.INFO: Old stock: 213.00  
[2026-06-21 15:19:54] production.INFO: Quantity deducted: 1  
[2026-06-21 15:19:54] production.INFO: New stock: 212  
[2026-06-21 15:19:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782047996168"} 
[2026-06-21 15:22:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782048140343","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"42.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T13:13:24.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 15:22:18] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-21 15:22:18] production.INFO: Old stock: 42.00  
[2026-06-21 15:22:18] production.INFO: Quantity deducted: 1  
[2026-06-21 15:22:18] production.INFO: New stock: 41  
[2026-06-21 15:22:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782048140343"} 
[2026-06-21 16:03:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782050596297","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T17:37:26.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 16:03:17] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-21 16:03:17] production.INFO: Old stock: 12.00  
[2026-06-21 16:03:17] production.INFO: Quantity deducted: 1  
[2026-06-21 16:03:17] production.INFO: New stock: 11  
[2026-06-21 16:03:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782050596297"} 
[2026-06-21 16:10:56] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782051056254","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-07T10:26:39.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"336.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T14:27:37.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"366.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T11:03:17.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:10:56] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-06-21 16:10:56] production.INFO: Old stock: 46.00  
[2026-06-21 16:10:56] production.INFO: Quantity deducted: 1  
[2026-06-21 16:10:56] production.INFO: New stock: 45  
[2026-06-21 16:10:56] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-21 16:10:56] production.INFO: Old stock: 336.00  
[2026-06-21 16:10:56] production.INFO: Quantity deducted: 2  
[2026-06-21 16:10:56] production.INFO: New stock: 334  
[2026-06-21 16:10:56] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-21 16:10:56] production.INFO: Old stock: 366.00  
[2026-06-21 16:10:56] production.INFO: Quantity deducted: 2  
[2026-06-21 16:10:56] production.INFO: New stock: 364  
[2026-06-21 16:10:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782051056254"} 
[2026-06-21 16:14:20] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782051261125","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"334.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T14:10:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"364.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T14:10:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:14:20] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-21 16:14:20] production.INFO: Old stock: 334.00  
[2026-06-21 16:14:20] production.INFO: Quantity deducted: 6  
[2026-06-21 16:14:20] production.INFO: New stock: 328  
[2026-06-21 16:14:20] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-21 16:14:20] production.INFO: Old stock: 364.00  
[2026-06-21 16:14:20] production.INFO: Quantity deducted: 1  
[2026-06-21 16:14:20] production.INFO: New stock: 363  
[2026-06-21 16:14:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782051261125"} 
[2026-06-21 16:15:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782051311509","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"74.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T07:53:10.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:15:11] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-21 16:15:11] production.INFO: Old stock: 74.00  
[2026-06-21 16:15:11] production.INFO: Quantity deducted: 1  
[2026-06-21 16:15:11] production.INFO: New stock: 73  
[2026-06-21 16:15:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782051311509"} 
[2026-06-21 16:22:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782051740955","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"44.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T13:01:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"114.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T13:51:49.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-21 16:22:21] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-21 16:22:21] production.INFO: Old stock: 44.00  
[2026-06-21 16:22:21] production.INFO: Quantity deducted: 1  
[2026-06-21 16:22:21] production.INFO: New stock: 43  
[2026-06-21 16:22:21] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-21 16:22:21] production.INFO: Old stock: 114.00  
[2026-06-21 16:22:21] production.INFO: Quantity deducted: 1  
[2026-06-21 16:22:21] production.INFO: New stock: 113  
[2026-06-21 16:22:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782051740955"} 
[2026-06-21 16:22:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782051754923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"30.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-18T14:40:50.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:22:34] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-21 16:22:34] production.INFO: Old stock: 30.00  
[2026-06-21 16:22:34] production.INFO: Quantity deducted: 1  
[2026-06-21 16:22:34] production.INFO: New stock: 29  
[2026-06-21 16:22:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782051754923"} 
[2026-06-21 16:22:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782051764587","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"30.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-19T17:07:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:22:44] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-21 16:22:44] production.INFO: Old stock: 30.00  
[2026-06-21 16:22:44] production.INFO: Quantity deducted: 1  
[2026-06-21 16:22:44] production.INFO: New stock: 29  
[2026-06-21 16:22:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782051764587"} 
[2026-06-21 16:28:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782052117465","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"22.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T16:06:21.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:28:37] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-21 16:28:37] production.INFO: Old stock: 22.00  
[2026-06-21 16:28:37] production.INFO: Quantity deducted: 1  
[2026-06-21 16:28:37] production.INFO: New stock: 21  
[2026-06-21 16:28:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782052117465"} 
[2026-06-21 16:46:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782053175003","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"328.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T14:14:20.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:46:16] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-21 16:46:16] production.INFO: Old stock: 328.00  
[2026-06-21 16:46:16] production.INFO: Quantity deducted: 2  
[2026-06-21 16:46:16] production.INFO: New stock: 326  
[2026-06-21 16:46:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782053175003"} 
[2026-06-21 16:46:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782053216523","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"363.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T14:14:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:46:56] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-21 16:46:56] production.INFO: Old stock: 363.00  
[2026-06-21 16:46:56] production.INFO: Quantity deducted: 2  
[2026-06-21 16:46:56] production.INFO: New stock: 361  
[2026-06-21 16:46:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782053216523"} 
[2026-06-21 16:47:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782053264971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"47.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T13:14:46.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:47:44] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 16:47:44] production.INFO: Old stock: 47.00  
[2026-06-21 16:47:44] production.INFO: Quantity deducted: 1  
[2026-06-21 16:47:44] production.INFO: New stock: 46  
[2026-06-21 16:47:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782053264971"} 
[2026-06-21 16:52:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782053526977","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"13.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T11:14:48.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"328.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T14:46:39.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":3,"subtotal":600,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"361.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T14:46:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 16:52:06] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-21 16:52:06] production.INFO: Old stock: 13.00  
[2026-06-21 16:52:06] production.INFO: Quantity deducted: 2  
[2026-06-21 16:52:06] production.INFO: New stock: 11  
[2026-06-21 16:52:06] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-21 16:52:06] production.INFO: Old stock: 328.00  
[2026-06-21 16:52:06] production.INFO: Quantity deducted: 1  
[2026-06-21 16:52:06] production.INFO: New stock: 327  
[2026-06-21 16:52:06] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-21 16:52:06] production.INFO: Old stock: 361.00  
[2026-06-21 16:52:06] production.INFO: Quantity deducted: 3  
[2026-06-21 16:52:06] production.INFO: New stock: 358  
[2026-06-21 16:52:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782053526977"} 
[2026-06-21 17:06:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782054373598","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"86.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-09T13:06:36.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:06:14] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-06-21 17:06:14] production.INFO: Old stock: 86.00  
[2026-06-21 17:06:14] production.INFO: Quantity deducted: 1  
[2026-06-21 17:06:14] production.INFO: New stock: 85  
[2026-06-21 17:06:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782054373598"} 
[2026-06-21 17:07:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782054473517","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"46.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T14:47:44.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:07:53] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 17:07:53] production.INFO: Old stock: 46.00  
[2026-06-21 17:07:53] production.INFO: Quantity deducted: 1  
[2026-06-21 17:07:53] production.INFO: New stock: 45  
[2026-06-21 17:07:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782054473517"} 
[2026-06-21 17:23:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782055422024","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"29.00","stock":"97.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-21T14:22:44.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:23:42] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-21 17:23:42] production.INFO: Old stock: 29.00  
[2026-06-21 17:23:42] production.INFO: Quantity deducted: 1  
[2026-06-21 17:23:42] production.INFO: New stock: 28  
[2026-06-21 17:23:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782055422024"} 
[2026-06-21 17:26:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782055600111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-20T13:51:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:26:41] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-21 17:26:41] production.INFO: Old stock: 17.00  
[2026-06-21 17:26:41] production.INFO: Quantity deducted: 1  
[2026-06-21 17:26:41] production.INFO: New stock: 16  
[2026-06-21 17:26:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782055600111"} 
[2026-06-21 17:38:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782056299347","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":574,"product_id":574,"name":"Mucolyn Peads 100ml","sku":"3211","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":574,"name":"Mucolyn Peads 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3211","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T13:22:44.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:38:20] production.INFO: Stock deduction for product: Mucolyn Peads 100ml  
[2026-06-21 17:38:20] production.INFO: Old stock: 13.00  
[2026-06-21 17:38:20] production.INFO: Quantity deducted: 1  
[2026-06-21 17:38:20] production.INFO: New stock: 12  
[2026-06-21 17:38:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782056299347"} 
[2026-06-21 17:42:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782056572042","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":167,"product_id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","sku":"0729","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"51.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0729","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-21T11:05:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"43.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T14:22:21.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:42:52] production.INFO: Stock deduction for product: CETERIZINE Tablets 10MG (RINACET)  
[2026-06-21 17:42:52] production.INFO: Old stock: 51.00  
[2026-06-21 17:42:52] production.INFO: Quantity deducted: 2  
[2026-06-21 17:42:52] production.INFO: New stock: 49  
[2026-06-21 17:42:52] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-21 17:42:52] production.INFO: Old stock: 43.00  
[2026-06-21 17:42:52] production.INFO: Quantity deducted: 1  
[2026-06-21 17:42:52] production.INFO: New stock: 42  
[2026-06-21 17:42:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782056572042"} 
[2026-06-21 17:50:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782057019488","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"212.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T13:19:54.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:50:19] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-21 17:50:19] production.INFO: Old stock: 212.00  
[2026-06-21 17:50:19] production.INFO: Quantity deducted: 2  
[2026-06-21 17:50:19] production.INFO: New stock: 210  
[2026-06-21 17:50:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782057019488"} 
[2026-06-21 17:51:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782057115831","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"32.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-17T17:41:46.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 17:51:55] production.INFO: Stock deduction for product: Iduplus  
[2026-06-21 17:51:55] production.INFO: Old stock: 32.00  
[2026-06-21 17:51:55] production.INFO: Quantity deducted: 1  
[2026-06-21 17:51:55] production.INFO: New stock: 31  
[2026-06-21 17:51:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782057115831"} 
[2026-06-21 17:58:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782057518206","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":824,"product_id":824,"name":"Nifedipine Denk 20mg","sku":"PRD-00824","price":"10000.00","selling_price":"10000.00","purchase_price":"4900.00","quantity":2,"subtotal":20000,"product":{"id":824,"name":"Nifedipine Denk 20mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4900.00","last_purchase_price":"4900.00","selling_price":"10000.00","current_stock":"20.00","stock":"22.00","product_type":"Single","tax":null,"sku":"PRD-00824","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":"2026-03-24","created_at":"2026-03-24T08:48:47.000000Z","updated_at":"2026-05-24T08:18:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":2,"subtotal":6000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"24.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T15:18:45.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 17:58:38] production.INFO: Stock deduction for product: Nifedipine Denk 20mg  
[2026-06-21 17:58:38] production.INFO: Old stock: 20.00  
[2026-06-21 17:58:38] production.INFO: Quantity deducted: 2  
[2026-06-21 17:58:38] production.INFO: New stock: 18  
[2026-06-21 17:58:38] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-21 17:58:38] production.INFO: Old stock: 24.00  
[2026-06-21 17:58:38] production.INFO: Quantity deducted: 2  
[2026-06-21 17:58:38] production.INFO: New stock: 22  
[2026-06-21 17:58:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782057518206"} 
[2026-06-21 18:00:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782057618076","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"44.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T18:10:34.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 18:00:17] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-21 18:00:17] production.INFO: Old stock: 44.00  
[2026-06-21 18:00:17] production.INFO: Quantity deducted: 1  
[2026-06-21 18:00:17] production.INFO: New stock: 43  
[2026-06-21 18:00:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782057618076"} 
[2026-06-21 18:01:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782057719084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"45.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T15:07:53.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 18:01:58] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 18:01:58] production.INFO: Old stock: 45.00  
[2026-06-21 18:01:58] production.INFO: Quantity deducted: 1  
[2026-06-21 18:01:58] production.INFO: New stock: 44  
[2026-06-21 18:01:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782057719084"} 
[2026-06-21 18:07:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782058067371","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"44.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T16:01:58.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-21 18:07:46] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 18:07:47] production.INFO: Old stock: 44.00  
[2026-06-21 18:07:47] production.INFO: Quantity deducted: 1  
[2026-06-21 18:07:47] production.INFO: New stock: 43  
[2026-06-21 18:07:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782058067371"} 
[2026-06-21 18:18:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782058700815","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T06:49:07.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"cash"}} 
[2026-06-21 18:18:20] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-06-21 18:18:20] production.INFO: Old stock: 30.00  
[2026-06-21 18:18:20] production.INFO: Quantity deducted: 1  
[2026-06-21 18:18:20] production.INFO: New stock: 29  
[2026-06-21 18:18:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782058700815"} 
[2026-06-21 19:04:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782061457032","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"43.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T16:07:46.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-21 19:04:19] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 19:04:19] production.INFO: Old stock: 43.00  
[2026-06-21 19:04:19] production.INFO: Quantity deducted: 1  
[2026-06-21 19:04:19] production.INFO: New stock: 42  
[2026-06-21 19:04:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782061457032"} 
[2026-06-21 19:18:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782062325801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Amoxicillin Syrup (Moxileb)","sku":"1327","price":"5000.00","selling_price":"5000.00","purchase_price":"2450.00","quantity":1,"subtotal":5000,"product":{"id":68,"name":"Amoxicillin Syrup (Moxileb)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1327","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-12T04:10:39.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 19:18:47] production.INFO: Stock deduction for product: Amoxicillin Syrup (Moxileb)  
[2026-06-21 19:18:47] production.INFO: Old stock: 4.00  
[2026-06-21 19:18:47] production.INFO: Quantity deducted: 1  
[2026-06-21 19:18:47] production.INFO: New stock: 3  
[2026-06-21 19:18:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782062325801"} 
[2026-06-21 20:26:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782066417576","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"42.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T17:04:19.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-21 20:26:59] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-21 20:26:59] production.INFO: Old stock: 42.00  
[2026-06-21 20:26:59] production.INFO: Quantity deducted: 1  
[2026-06-21 20:26:59] production.INFO: New stock: 41  
[2026-06-21 20:26:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782066417576"} 
[2026-06-22 08:01:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782108077613","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":721,"product_id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","sku":"3358","price":"2000.00","selling_price":"2000.00","purchase_price":"760.00","quantity":1,"subtotal":2000,"product":{"id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3358","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T17:37:31.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 08:01:17] production.INFO: Stock deduction for product: Tetracycline Eye Ointiment (WW-TEO)  
[2026-06-22 08:01:17] production.INFO: Old stock: 11.00  
[2026-06-22 08:01:17] production.INFO: Quantity deducted: 1  
[2026-06-22 08:01:17] production.INFO: New stock: 10  
[2026-06-22 08:01:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782108077613"} 
[2026-06-22 08:07:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782108442251","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"3.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-20T14:21:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 08:07:22] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-22 08:07:22] production.INFO: Old stock: 3.00  
[2026-06-22 08:07:22] production.INFO: Quantity deducted: 1  
[2026-06-22 08:07:22] production.INFO: New stock: 2  
[2026-06-22 08:07:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782108442251"} 
[2026-06-22 08:12:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782108762521","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"11.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T14:52:06.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 08:12:41] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-22 08:12:41] production.INFO: Old stock: 11.00  
[2026-06-22 08:12:41] production.INFO: Quantity deducted: 1  
[2026-06-22 08:12:41] production.INFO: New stock: 10  
[2026-06-22 08:12:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782108762521"} 
[2026-06-22 08:32:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782109955603","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"41.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T18:26:59.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 08:32:36] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-22 08:32:36] production.INFO: Old stock: 41.00  
[2026-06-22 08:32:36] production.INFO: Quantity deducted: 1  
[2026-06-22 08:32:36] production.INFO: New stock: 40  
[2026-06-22 08:32:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782109955603"} 
[2026-06-22 08:42:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782110562423","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":2,"subtotal":3000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"5.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2027-05-31","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-20T14:14:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 08:42:41] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-22 08:42:41] production.INFO: Old stock: 5.00  
[2026-06-22 08:42:41] production.INFO: Quantity deducted: 2  
[2026-06-22 08:42:41] production.INFO: New stock: 3  
[2026-06-22 08:42:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782110562423"} 
[2026-06-22 09:04:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782111856912","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":2,"subtotal":4000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"26.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T14:51:16.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":3,"subtotal":6000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"132.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T09:42:36.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 09:04:18] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-22 09:04:18] production.INFO: Old stock: 26.00  
[2026-06-22 09:04:18] production.INFO: Quantity deducted: 2  
[2026-06-22 09:04:18] production.INFO: New stock: 24  
[2026-06-22 09:04:18] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-22 09:04:18] production.INFO: Old stock: 132.00  
[2026-06-22 09:04:18] production.INFO: Quantity deducted: 3  
[2026-06-22 09:04:18] production.INFO: New stock: 129  
[2026-06-22 09:04:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782111856912"} 
[2026-06-22 09:54:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782114866512","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"94.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-20T10:06:43.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":62,"product_id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","sku":"0675","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"34.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0675","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-08T10:03:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 09:54:26] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-22 09:54:26] production.INFO: Old stock: 94.00  
[2026-06-22 09:54:26] production.INFO: Quantity deducted: 1  
[2026-06-22 09:54:26] production.INFO: New stock: 93  
[2026-06-22 09:54:26] production.INFO: Stock deduction for product: AMLODIPINE TABLET 10MG-ZAAR-10  
[2026-06-22 09:54:26] production.INFO: Old stock: 34.00  
[2026-06-22 09:54:26] production.INFO: Quantity deducted: 1  
[2026-06-22 09:54:26] production.INFO: New stock: 33  
[2026-06-22 09:54:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782114866512"} 
[2026-06-22 10:06:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782115567077","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":2,"subtotal":3000,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"24.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-18T12:19:22.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 10:06:06] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-22 10:06:06] production.INFO: Old stock: 24.00  
[2026-06-22 10:06:06] production.INFO: Quantity deducted: 2  
[2026-06-22 10:06:06] production.INFO: New stock: 22  
[2026-06-22 10:06:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782115567077"} 
[2026-06-22 10:22:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782116529551","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"113.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-21T14:22:21.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-22 10:22:08] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-22 10:22:08] production.INFO: Old stock: 113.00  
[2026-06-22 10:22:08] production.INFO: Quantity deducted: 1  
[2026-06-22 10:22:08] production.INFO: New stock: 112  
[2026-06-22 10:22:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782116529551"} 
[2026-06-22 11:03:08] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782118989041","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"73.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T14:15:11.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"85.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-21T15:06:14.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 11:03:08] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-22 11:03:08] production.INFO: Old stock: 73.00  
[2026-06-22 11:03:08] production.INFO: Quantity deducted: 1  
[2026-06-22 11:03:08] production.INFO: New stock: 72  
[2026-06-22 11:03:08] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-06-22 11:03:08] production.INFO: Old stock: 85.00  
[2026-06-22 11:03:08] production.INFO: Quantity deducted: 1  
[2026-06-22 11:03:08] production.INFO: New stock: 84  
[2026-06-22 11:03:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782118989041"} 
[2026-06-22 11:28:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782120509697","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"9.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-16T16:48:56.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":9500},{"method":"cash","amount":500}]}} 
[2026-06-22 12:07:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782122820421","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":95,"product_id":95,"name":"Bactoclav","sku":"1189","price":"9500.00","selling_price":"9500.00","purchase_price":"4900.00","quantity":1,"subtotal":9500,"product":{"id":95,"name":"Bactoclav","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4900.00","last_purchase_price":null,"selling_price":"9500.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-14T09:00:57.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 12:07:01] production.INFO: Stock deduction for product: Bactoclav  
[2026-06-22 12:07:01] production.INFO: Old stock: 11.00  
[2026-06-22 12:07:01] production.INFO: Quantity deducted: 1  
[2026-06-22 12:07:01] production.INFO: New stock: 10  
[2026-06-22 12:07:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782122820421"} 
[2026-06-22 12:12:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782123127346","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":882,"product_id":882,"name":"Ambcet","sku":"PRD-00882","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":882,"name":"Ambcet","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00882","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-20","created_at":"2026-05-20T05:16:10.000000Z","updated_at":"2026-06-12T17:12:38.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"40.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T06:32:36.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 12:12:07] production.INFO: Stock deduction for product: Ambcet  
[2026-06-22 12:12:07] production.INFO: Old stock: 8.00  
[2026-06-22 12:12:07] production.INFO: Quantity deducted: 1  
[2026-06-22 12:12:07] production.INFO: New stock: 7  
[2026-06-22 12:12:07] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-22 12:12:07] production.INFO: Old stock: 40.00  
[2026-06-22 12:12:07] production.INFO: Quantity deducted: 1  
[2026-06-22 12:12:07] production.INFO: New stock: 39  
[2026-06-22 12:12:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782123127346"} 
[2026-06-22 12:44:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782125049704","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":807,"product_id":807,"name":"Crepe Bandage 10cm","sku":"1174","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":807,"name":"Crepe Bandage 10cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1174","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-14T12:27:02.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"28.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T15:32:44.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":611,"product_id":611,"name":"OPRA TABLET (Loperamide 2mg)","sku":"3248","price":"1500.00","selling_price":"1500.00","purchase_price":"700.00","quantity":1,"subtotal":1500,"product":{"id":611,"name":"OPRA TABLET (Loperamide 2mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"17.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3248","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-09T09:24:32.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 12:44:08] production.INFO: Stock deduction for product: Crepe Bandage 10cm  
[2026-06-22 12:44:08] production.INFO: Old stock: 2.00  
[2026-06-22 12:44:08] production.INFO: Quantity deducted: 1  
[2026-06-22 12:44:08] production.INFO: New stock: 1  
[2026-06-22 12:44:08] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-22 12:44:08] production.INFO: Old stock: 28.00  
[2026-06-22 12:44:08] production.INFO: Quantity deducted: 1  
[2026-06-22 12:44:08] production.INFO: New stock: 27  
[2026-06-22 12:44:08] production.INFO: Stock deduction for product: OPRA TABLET (Loperamide 2mg)  
[2026-06-22 12:44:08] production.INFO: Old stock: 17.00  
[2026-06-22 12:44:08] production.INFO: Quantity deducted: 1  
[2026-06-22 12:44:08] production.INFO: New stock: 16  
[2026-06-22 12:44:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782125049704"} 
[2026-06-22 12:53:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782125628069","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"42.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-20T13:51:49.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 12:53:46] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-22 12:53:46] production.INFO: Old stock: 42.00  
[2026-06-22 12:53:46] production.INFO: Quantity deducted: 1  
[2026-06-22 12:53:46] production.INFO: New stock: 41  
[2026-06-22 12:53:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782125628069"} 
[2026-06-22 13:29:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782127751673","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"72.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T09:03:08.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 13:29:10] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-22 13:29:10] production.INFO: Old stock: 72.00  
[2026-06-22 13:29:10] production.INFO: Quantity deducted: 1  
[2026-06-22 13:29:10] production.INFO: New stock: 71  
[2026-06-22 13:29:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782127751673"} 
[2026-06-22 13:34:23] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782128063800","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":503,"product_id":503,"name":"Laxopeg Syrup","sku":"3140","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":503,"name":"Laxopeg Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"19.00","stock":"20.00","product_type":"Single","tax":null,"sku":"3140","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-20","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-25T11:08:41.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":403,"product_id":403,"name":"Gaviscon Double Action Tablets","sku":"3040","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":403,"name":"Gaviscon Double Action Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":null,"supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3040","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-30T09:24:49.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 13:34:23] production.INFO: Stock deduction for product: Laxopeg Syrup  
[2026-06-22 13:34:23] production.INFO: Old stock: 19.00  
[2026-06-22 13:34:23] production.INFO: Quantity deducted: 1  
[2026-06-22 13:34:23] production.INFO: New stock: 18  
[2026-06-22 13:34:23] production.INFO: Stock deduction for product: Gaviscon Double Action Tablets  
[2026-06-22 13:34:23] production.INFO: Old stock: 12.00  
[2026-06-22 13:34:23] production.INFO: Quantity deducted: 1  
[2026-06-22 13:34:23] production.INFO: New stock: 11  
[2026-06-22 13:34:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782128063800"} 
[2026-06-22 13:44:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782128653029","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"38.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-19T17:27:58.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 13:44:13] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-22 13:44:13] production.INFO: Old stock: 38.00  
[2026-06-22 13:44:13] production.INFO: Quantity deducted: 1  
[2026-06-22 13:44:13] production.INFO: New stock: 37  
[2026-06-22 13:44:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782128653029"} 
[2026-06-22 14:05:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782129921405","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"39.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T10:12:07.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 14:05:20] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-22 14:05:20] production.INFO: Old stock: 39.00  
[2026-06-22 14:05:20] production.INFO: Quantity deducted: 1  
[2026-06-22 14:05:20] production.INFO: New stock: 38  
[2026-06-22 14:05:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782129921405"} 
[2026-06-22 14:25:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782131147958","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":"2.00","subtotal":5000,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"2.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-15T06:52:02.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":394,"product_id":394,"name":"FUNGISTAT (Miconazole Cream 2%w/w), 15g","sku":"3031","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":3,"subtotal":15000,"product":{"id":394,"name":"FUNGISTAT (Miconazole Cream 2%w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"7.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3031","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T11:57:12.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 14:25:48] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-06-22 14:25:48] production.INFO: Old stock: 2.00  
[2026-06-22 14:25:48] production.INFO: Quantity deducted: 2.00  
[2026-06-22 14:25:48] production.INFO: New stock: 0  
[2026-06-22 14:25:48] production.INFO: Stock deduction for product: FUNGISTAT (Miconazole Cream 2%w/w), 15g  
[2026-06-22 14:25:48] production.INFO: Old stock: 7.00  
[2026-06-22 14:25:48] production.INFO: Quantity deducted: 3  
[2026-06-22 14:25:48] production.INFO: New stock: 4  
[2026-06-22 14:25:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782131147958"} 
[2026-06-22 15:04:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782133467722","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"37.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-15T14:00:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 15:04:27] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-06-22 15:04:27] production.INFO: Old stock: 37.00  
[2026-06-22 15:04:27] production.INFO: Quantity deducted: 1  
[2026-06-22 15:04:27] production.INFO: New stock: 36  
[2026-06-22 15:04:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782133467722"} 
[2026-06-22 15:17:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782134236101","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":4,"subtotal":10000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"29.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T14:22:34.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":487,"product_id":487,"name":"KOFCLEAN Syrup, 100ml","sku":"3124","price":"5000.00","selling_price":"5000.00","purchase_price":"2000.00","quantity":1,"subtotal":5000,"product":{"id":487,"name":"KOFCLEAN Syrup, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3124","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-04-14T03:42:10.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 15:17:16] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-22 15:17:16] production.INFO: Old stock: 29.00  
[2026-06-22 15:17:16] production.INFO: Quantity deducted: 4  
[2026-06-22 15:17:16] production.INFO: New stock: 25  
[2026-06-22 15:17:16] production.INFO: Stock deduction for product: KOFCLEAN Syrup, 100ml  
[2026-06-22 15:17:16] production.INFO: Old stock: 1.00  
[2026-06-22 15:17:16] production.INFO: Quantity deducted: 1  
[2026-06-22 15:17:16] production.INFO: New stock: 0  
[2026-06-22 15:17:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782134236101"} 
[2026-06-22 15:21:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782134492149","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":737,"product_id":737,"name":"Tripride 2","sku":"3374","price":"18500.00","selling_price":"18500.00","purchase_price":"9300.00","quantity":1,"subtotal":18500,"product":{"id":737,"name":"Tripride 2","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":null,"supplier_id":null,"purchase_price":"9300.00","last_purchase_price":null,"selling_price":"18500.00","current_stock":"36.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3374","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T10:34:23.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 15:21:31] production.INFO: Stock deduction for product: Tripride 2  
[2026-06-22 15:21:31] production.INFO: Old stock: 36.00  
[2026-06-22 15:21:31] production.INFO: Quantity deducted: 1  
[2026-06-22 15:21:31] production.INFO: New stock: 35  
[2026-06-22 15:21:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782134492149"} 
[2026-06-22 15:25:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782134706043","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-17T12:15:50.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-22 15:25:06] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-06-22 15:25:06] production.INFO: Old stock: 7.00  
[2026-06-22 15:25:06] production.INFO: Quantity deducted: 1  
[2026-06-22 15:25:06] production.INFO: New stock: 6  
[2026-06-22 15:25:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782134706043"} 
[2026-06-22 15:28:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782134927834","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"27.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-16T15:56:50.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 15:28:47] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-22 15:28:47] production.INFO: Old stock: 27.00  
[2026-06-22 15:28:47] production.INFO: Quantity deducted: 1  
[2026-06-22 15:28:47] production.INFO: New stock: 26  
[2026-06-22 15:28:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782134927834"} 
[2026-06-22 15:31:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782135117873","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":4,"subtotal":10000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"25.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-22T13:17:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 15:31:57] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-22 15:31:57] production.INFO: Old stock: 25.00  
[2026-06-22 15:31:57] production.INFO: Quantity deducted: 4  
[2026-06-22 15:31:57] production.INFO: New stock: 21  
[2026-06-22 15:31:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782135117873"} 
[2026-06-22 15:44:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782135870408","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":760,"product_id":760,"name":"VOLTEM TABLET","sku":"3397","price":"3500.00","selling_price":"3500.00","purchase_price":"1850.00","quantity":1,"subtotal":3500,"product":{"id":760,"name":"VOLTEM TABLET","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3397","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-16T11:49:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"71.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T11:29:10.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 15:44:31] production.INFO: Stock deduction for product: VOLTEM TABLET  
[2026-06-22 15:44:31] production.INFO: Old stock: 5.00  
[2026-06-22 15:44:31] production.INFO: Quantity deducted: 1  
[2026-06-22 15:44:31] production.INFO: New stock: 4  
[2026-06-22 15:44:31] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-22 15:44:31] production.INFO: Old stock: 71.00  
[2026-06-22 15:44:31] production.INFO: Quantity deducted: 1  
[2026-06-22 15:44:31] production.INFO: New stock: 70  
[2026-06-22 15:44:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782135870408"} 
[2026-06-22 16:00:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782136849219","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"50.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-21T09:19:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 16:00:50] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-06-22 16:00:50] production.INFO: Old stock: 50.00  
[2026-06-22 16:00:50] production.INFO: Quantity deducted: 1  
[2026-06-22 16:00:50] production.INFO: New stock: 49  
[2026-06-22 16:00:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782136849219"} 
[2026-06-22 16:05:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782137120002","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"38.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T12:05:20.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 16:05:21] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-22 16:05:21] production.INFO: Old stock: 38.00  
[2026-06-22 16:05:21] production.INFO: Quantity deducted: 1  
[2026-06-22 16:05:21] production.INFO: New stock: 37  
[2026-06-22 16:05:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782137120002"} 
[2026-06-22 16:25:52] production.INFO: Stock Adjustment - Initial State {"product_id":"388","previous_quantity":"6.00","previous_selling_price":"3000.00","validated_data":{"product_id":"388","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:25:52] production.INFO: Stock Adjustment - After Quantity Save {"product_id":388,"new_quantity":18.0,"current_stock":18.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:27:29] production.INFO: Stock Adjustment - Initial State {"product_id":"760","previous_quantity":"4.00","previous_selling_price":"3500.00","validated_data":{"product_id":"760","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":"2000.00","new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:27:29] production.INFO: Stock Adjustment - After Quantity Save {"product_id":760,"new_quantity":24.0,"current_stock":24.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:28:22] production.INFO: Stock Adjustment - Initial State {"product_id":"432","previous_quantity":"6.00","previous_selling_price":"3000.00","validated_data":{"product_id":"432","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:28:22] production.INFO: Stock Adjustment - After Quantity Save {"product_id":432,"new_quantity":26.0,"current_stock":26.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:32:31] production.INFO: Stock Adjustment - Initial State {"product_id":"43","previous_quantity":"28.00","previous_selling_price":"6000.00","validated_data":{"product_id":"43","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:32:31] production.INFO: Stock Adjustment - After Quantity Save {"product_id":43,"new_quantity":128.0,"current_stock":128.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:32:59] production.INFO: Stock Adjustment - Initial State {"product_id":"402","previous_quantity":"1.00","previous_selling_price":"18000.00","validated_data":{"product_id":"402","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:32:59] production.INFO: Stock Adjustment - After Quantity Save {"product_id":402,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:33:30] production.INFO: Stock Adjustment - Initial State {"product_id":"875","previous_quantity":"3.00","previous_selling_price":"3000.00","validated_data":{"product_id":"875","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:33:30] production.INFO: Stock Adjustment - After Quantity Save {"product_id":875,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:34:53] production.INFO: Product Store - Request Data {"all_data":{"_token":"QMYdn2KV2HUvCRck14bzEIzH10JNH8kCA0YHJi3e","name":"Omega 3 1GM","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"27063.00","selling_price":"55000.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-22 16:34:53] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Omega 3 1GM","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"27063.00","selling_price":"55000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-22 16:34:53] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Omega 3 1GM","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"27063.00","selling_price":"55000.00","sku":"PRD-00912","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"27063.00","last_purchase_date":"2026-06-22 16:34:53"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-22 16:34:53] production.INFO: Product Store - Product Created {"product_id":912,"product_name":"Omega 3 1GM","product_sku":"PRD-00912"} 
[2026-06-22 16:37:07] production.INFO: Product Store - Request Data {"all_data":{"_token":"QMYdn2KV2HUvCRck14bzEIzH10JNH8kCA0YHJi3e","name":"Olopatadine  Solution 2%","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"8500.00","selling_price":"17000.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-22 16:37:07] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Olopatadine  Solution 2%","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"8500.00","selling_price":"17000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-22 16:37:07] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Olopatadine  Solution 2%","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"8500.00","selling_price":"17000.00","sku":"PRD-00913","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"8500.00","last_purchase_date":"2026-06-22 16:37:07"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-22 16:37:07] production.INFO: Product Store - Product Created {"product_id":913,"product_name":"Olopatadine  Solution 2%","product_sku":"PRD-00913"} 
[2026-06-22 16:38:35] production.INFO: Stock Adjustment - Initial State {"product_id":"770","previous_quantity":"0.00","previous_selling_price":"8000.00","validated_data":{"product_id":"770","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"8500.00","new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:38:35] production.INFO: Stock Adjustment - After Quantity Save {"product_id":770,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:38:54] production.INFO: Stock Adjustment - Initial State {"product_id":"771","previous_quantity":"8.00","previous_selling_price":"8000.00","validated_data":{"product_id":"771","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"8500.00","new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:38:54] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":771,"new_selling_price":"8500.00","current_stock":"8.00","changes_made":"Prices updated only"} 
[2026-06-22 16:39:20] production.INFO: Stock Adjustment - Initial State {"product_id":"189","previous_quantity":"12.00","previous_selling_price":"8000.00","validated_data":{"product_id":"189","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"8500.00","new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:39:20] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":189,"new_selling_price":"8500.00","current_stock":"12.00","changes_made":"Prices updated only"} 
[2026-06-22 16:39:42] production.INFO: Stock Adjustment - Initial State {"product_id":"787","previous_quantity":"11.00","previous_selling_price":"4500.00","validated_data":{"product_id":"787","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"5500.00","new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:39:42] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":787,"new_selling_price":"5500.00","current_stock":"11.00","changes_made":"Prices updated only"} 
[2026-06-22 16:40:07] production.INFO: Stock Adjustment - Initial State {"product_id":"654","previous_quantity":"8.00","previous_selling_price":"5000.00","validated_data":{"product_id":"654","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"5500.00","new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:40:07] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":654,"new_selling_price":"5500.00","current_stock":"8.00","changes_made":"Prices updated only"} 
[2026-06-22 16:41:30] production.INFO: Stock Adjustment - Initial State {"product_id":"413","previous_quantity":"0.00","previous_selling_price":"11000.00","validated_data":{"product_id":"413","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:41:30] production.INFO: Stock Adjustment - After Quantity Save {"product_id":413,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:42:49] production.INFO: Stock Adjustment - Initial State {"product_id":"221","previous_quantity":"0.00","previous_selling_price":"2500.00","validated_data":{"product_id":"221","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:42:49] production.INFO: Stock Adjustment - After Quantity Save {"product_id":221,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:43:21] production.INFO: Stock Adjustment - Initial State {"product_id":"222","previous_quantity":"5.00","previous_selling_price":"3000.00","validated_data":{"product_id":"222","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:43:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":222,"new_quantity":17.0,"current_stock":17.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:45:35] production.INFO: Stock Adjustment - Initial State {"product_id":"369","previous_quantity":"8.00","previous_selling_price":"300.00","validated_data":{"product_id":"369","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":"800.00","new_purchase_price":"360.00","new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:45:35] production.INFO: Stock Adjustment - After Quantity Save {"product_id":369,"new_quantity":108.0,"current_stock":108.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:46:19] production.INFO: Stock Adjustment - Initial State {"product_id":"642","previous_quantity":"3.00","previous_selling_price":"1500.00","validated_data":{"product_id":"642","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-22"}} 
[2026-06-22 16:46:19] production.INFO: Stock Adjustment - After Quantity Save {"product_id":642,"new_quantity":103.0,"current_stock":103.0,"changes_made":"Quantity adjusted"} 
[2026-06-22 16:54:45] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782140083490","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"2.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-22T06:07:22.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"358.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T14:52:06.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"327.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T14:52:06.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 16:54:45] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-22 16:54:45] production.INFO: Old stock: 2.00  
[2026-06-22 16:54:45] production.INFO: Quantity deducted: 1  
[2026-06-22 16:54:45] production.INFO: New stock: 1  
[2026-06-22 16:54:45] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-22 16:54:45] production.INFO: Old stock: 358.00  
[2026-06-22 16:54:45] production.INFO: Quantity deducted: 10  
[2026-06-22 16:54:45] production.INFO: New stock: 348  
[2026-06-22 16:54:45] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-22 16:54:45] production.INFO: Old stock: 327.00  
[2026-06-22 16:54:45] production.INFO: Quantity deducted: 1  
[2026-06-22 16:54:45] production.INFO: New stock: 326  
[2026-06-22 16:54:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782140083490"} 
[2026-06-22 17:06:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782140778558","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"210.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T15:50:19.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:06:20] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-22 17:06:20] production.INFO: Old stock: 210.00  
[2026-06-22 17:06:20] production.INFO: Quantity deducted: 2  
[2026-06-22 17:06:20] production.INFO: New stock: 208  
[2026-06-22 17:06:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782140778558"} 
[2026-06-22 17:08:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782140899141","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"297.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T09:51:01.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:08:19] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-22 17:08:19] production.INFO: Old stock: 297.00  
[2026-06-22 17:08:19] production.INFO: Quantity deducted: 4  
[2026-06-22 17:08:19] production.INFO: New stock: 293  
[2026-06-22 17:08:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782140899141"} 
[2026-06-22 17:18:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782141499306","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":4,"subtotal":1200,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"326.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T14:54:45.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:18:19] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-22 17:18:19] production.INFO: Old stock: 326.00  
[2026-06-22 17:18:19] production.INFO: Quantity deducted: 4  
[2026-06-22 17:18:19] production.INFO: New stock: 322  
[2026-06-22 17:18:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782141499306"} 
[2026-06-22 17:19:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782141572641","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"129.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T07:04:18.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:19:33] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-22 17:19:33] production.INFO: Old stock: 129.00  
[2026-06-22 17:19:33] production.INFO: Quantity deducted: 1  
[2026-06-22 17:19:33] production.INFO: New stock: 128  
[2026-06-22 17:19:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782141572641"} 
[2026-06-22 17:25:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782141902624","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"115.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T16:20:14.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:25:03] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-22 17:25:03] production.INFO: Old stock: 115.00  
[2026-06-22 17:25:03] production.INFO: Quantity deducted: 1  
[2026-06-22 17:25:03] production.INFO: New stock: 114  
[2026-06-22 17:25:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782141902624"} 
[2026-06-22 17:26:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782141976071","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":617,"product_id":617,"name":"ovulation (LH) Test Midstream","sku":"3254","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":3,"subtotal":4500,"product":{"id":617,"name":"ovulation (LH) Test Midstream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3254","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T07:12:36.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:26:16] production.INFO: Stock deduction for product: ovulation (LH) Test Midstream  
[2026-06-22 17:26:16] production.INFO: Old stock: 11.00  
[2026-06-22 17:26:16] production.INFO: Quantity deducted: 3  
[2026-06-22 17:26:16] production.INFO: New stock: 8  
[2026-06-22 17:26:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782141976071"} 
[2026-06-22 17:31:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782142304702","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"43.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-21T16:00:17.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:31:46] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-22 17:31:46] production.INFO: Old stock: 43.00  
[2026-06-22 17:31:46] production.INFO: Quantity deducted: 1  
[2026-06-22 17:31:46] production.INFO: New stock: 42  
[2026-06-22 17:31:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782142304702"} 
[2026-06-22 17:38:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782142684763","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"37.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T14:05:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 17:38:05] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-22 17:38:05] production.INFO: Old stock: 37.00  
[2026-06-22 17:38:05] production.INFO: Quantity deducted: 1  
[2026-06-22 17:38:05] production.INFO: New stock: 36  
[2026-06-22 17:38:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782142684763"} 
[2026-06-22 18:06:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782144370366","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"128.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T15:19:33.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 18:06:10] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-22 18:06:10] production.INFO: Old stock: 128.00  
[2026-06-22 18:06:10] production.INFO: Quantity deducted: 1  
[2026-06-22 18:06:10] production.INFO: New stock: 127  
[2026-06-22 18:06:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782144370366"} 
[2026-06-22 18:07:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782144435305","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":2,"subtotal":11000,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"49.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T14:00:50.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"37.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-22T11:44:13.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"24.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T07:04:18.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 18:07:17] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-06-22 18:07:17] production.INFO: Old stock: 49.00  
[2026-06-22 18:07:17] production.INFO: Quantity deducted: 2  
[2026-06-22 18:07:17] production.INFO: New stock: 47  
[2026-06-22 18:07:17] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-22 18:07:17] production.INFO: Old stock: 37.00  
[2026-06-22 18:07:17] production.INFO: Quantity deducted: 1  
[2026-06-22 18:07:17] production.INFO: New stock: 36  
[2026-06-22 18:07:17] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-22 18:07:17] production.INFO: Old stock: 24.00  
[2026-06-22 18:07:17] production.INFO: Quantity deducted: 1  
[2026-06-22 18:07:17] production.INFO: New stock: 23  
[2026-06-22 18:07:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782144435305"} 
[2026-06-22 18:11:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782144708050","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"29.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-20T08:39:24.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 18:11:49] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-22 18:11:49] production.INFO: Old stock: 29.00  
[2026-06-22 18:11:49] production.INFO: Quantity deducted: 1  
[2026-06-22 18:11:49] production.INFO: New stock: 28  
[2026-06-22 18:11:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782144708050"} 
[2026-06-22 18:21:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782145290871","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"93.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-22T07:54:26.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 18:21:35] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-22 18:21:35] production.INFO: Old stock: 93.00  
[2026-06-22 18:21:35] production.INFO: Quantity deducted: 1  
[2026-06-22 18:21:35] production.INFO: New stock: 92  
[2026-06-22 18:21:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782145290871"} 
[2026-06-22 18:38:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782146293795","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":748,"product_id":748,"name":"Vagid CL Pessary","sku":"3385","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":748,"name":"Vagid CL Pessary","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3385","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T17:15:15.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T14:39:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"127.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T16:06:10.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 18:38:16] production.INFO: Stock deduction for product: Vagid CL Pessary  
[2026-06-22 18:38:16] production.INFO: Old stock: 6.00  
[2026-06-22 18:38:16] production.INFO: Quantity deducted: 1  
[2026-06-22 18:38:16] production.INFO: New stock: 5  
[2026-06-22 18:38:16] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-22 18:38:16] production.INFO: Old stock: 11.00  
[2026-06-22 18:38:16] production.INFO: Quantity deducted: 1  
[2026-06-22 18:38:16] production.INFO: New stock: 10  
[2026-06-22 18:38:16] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-22 18:38:16] production.INFO: Old stock: 127.00  
[2026-06-22 18:38:16] production.INFO: Quantity deducted: 1  
[2026-06-22 18:38:16] production.INFO: New stock: 126  
[2026-06-22 18:38:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782146293795"} 
[2026-06-22 19:01:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782147703456","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":80,"product_id":80,"name":"Artificial Tear (Sodium Carboxymethyl Cellulose))","sku":"1267","price":"17000.00","selling_price":"17000.00","purchase_price":"7500.00","quantity":1,"subtotal":17000,"product":{"id":80,"name":"Artificial Tear (Sodium Carboxymethyl Cellulose))","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"17000.00","current_stock":"23.00","stock":"23.00","product_type":"Single","tax":null,"sku":"1267","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-10T10:15:54.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-22 19:01:46] production.INFO: Stock deduction for product: Artificial Tear (Sodium Carboxymethyl Cellulose))  
[2026-06-22 19:01:46] production.INFO: Old stock: 23.00  
[2026-06-22 19:01:46] production.INFO: Quantity deducted: 1  
[2026-06-22 19:01:46] production.INFO: New stock: 22  
[2026-06-22 19:01:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782147703456"} 
[2026-06-22 19:33:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782149616187","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":10,"subtotal":30000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"22.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T15:58:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-22 19:33:38] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-06-22 19:33:38] production.INFO: Old stock: 22.00  
[2026-06-22 19:33:38] production.INFO: Quantity deducted: 10  
[2026-06-22 19:33:38] production.INFO: New stock: 12  
[2026-06-22 19:33:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782149616187"} 
[2026-06-22 19:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782150312033","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":643,"product_id":643,"name":"POLYGEL SUSPENSION 100ML","sku":"3280","price":"6500.00","selling_price":"6500.00","purchase_price":"3500.00","quantity":1,"subtotal":6500,"product":{"id":643,"name":"POLYGEL SUSPENSION 100ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"7.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3280","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T14:28:45.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"322.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T15:18:19.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"348.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T14:54:45.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 19:45:14] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 100ML  
[2026-06-22 19:45:14] production.INFO: Old stock: 7.00  
[2026-06-22 19:45:14] production.INFO: Quantity deducted: 1  
[2026-06-22 19:45:14] production.INFO: New stock: 6  
[2026-06-22 19:45:14] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-22 19:45:14] production.INFO: Old stock: 322.00  
[2026-06-22 19:45:14] production.INFO: Quantity deducted: 1  
[2026-06-22 19:45:14] production.INFO: New stock: 321  
[2026-06-22 19:45:14] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-22 19:45:14] production.INFO: Old stock: 348.00  
[2026-06-22 19:45:14] production.INFO: Quantity deducted: 1  
[2026-06-22 19:45:14] production.INFO: New stock: 347  
[2026-06-22 19:45:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782150312033"} 
[2026-06-22 20:05:32] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782151529524","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":479,"product_id":479,"name":"KETAZOL (Ketoconazole Cream), 15g","sku":"3116","price":"3500.00","selling_price":"3500.00","purchase_price":"1300.00","quantity":1,"subtotal":3500,"product":{"id":479,"name":"KETAZOL (Ketoconazole Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"15","brand_id":"35","supplier_id":null,"purchase_price":"1300.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"4.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3116","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T11:32:42.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":772,"product_id":772,"name":"XPRESS GEL (Diclofenac Diethylamine, Linseed Oil, etc), 30g","sku":"3409","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":772,"name":"XPRESS GEL (Diclofenac Diethylamine, Linseed Oil, etc), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"26","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3409","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-03-25T06:12:26.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"347.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T17:45:14.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":7,"subtotal":2100,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"321.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T17:45:14.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 20:05:32] production.INFO: Stock deduction for product: KETAZOL (Ketoconazole Cream), 15g  
[2026-06-22 20:05:32] production.INFO: Old stock: 4.00  
[2026-06-22 20:05:32] production.INFO: Quantity deducted: 1  
[2026-06-22 20:05:32] production.INFO: New stock: 3  
[2026-06-22 20:05:32] production.INFO: Stock deduction for product: XPRESS GEL (Diclofenac Diethylamine, Linseed Oil, etc), 30g  
[2026-06-22 20:05:32] production.INFO: Old stock: 4.00  
[2026-06-22 20:05:32] production.INFO: Quantity deducted: 1  
[2026-06-22 20:05:32] production.INFO: New stock: 3  
[2026-06-22 20:05:32] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-22 20:05:32] production.INFO: Old stock: 347.00  
[2026-06-22 20:05:32] production.INFO: Quantity deducted: 2  
[2026-06-22 20:05:32] production.INFO: New stock: 345  
[2026-06-22 20:05:32] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-22 20:05:32] production.INFO: Old stock: 321.00  
[2026-06-22 20:05:32] production.INFO: Quantity deducted: 7  
[2026-06-22 20:05:32] production.INFO: New stock: 314  
[2026-06-22 20:05:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782151529524"} 
[2026-06-22 20:07:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782151617764","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"41.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-22T10:53:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"42.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T15:42:52.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-22 20:07:00] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-22 20:07:00] production.INFO: Old stock: 41.00  
[2026-06-22 20:07:00] production.INFO: Quantity deducted: 1  
[2026-06-22 20:07:00] production.INFO: New stock: 40  
[2026-06-22 20:07:00] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-22 20:07:00] production.INFO: Old stock: 42.00  
[2026-06-22 20:07:00] production.INFO: Quantity deducted: 1  
[2026-06-22 20:07:00] production.INFO: New stock: 41  
[2026-06-22 20:07:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782151617764"} 
[2026-06-22 20:42:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782153762349","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"314.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T18:05:32.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-22 20:42:44] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-22 20:42:44] production.INFO: Old stock: 314.00  
[2026-06-22 20:42:44] production.INFO: Quantity deducted: 3  
[2026-06-22 20:42:44] production.INFO: New stock: 311  
[2026-06-22 20:42:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782153762349"} 
[2026-06-23 08:45:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782197158661","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":574,"product_id":574,"name":"Mucolyn Peads 100ml","sku":"3211","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":574,"name":"Mucolyn Peads 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"12.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3211","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T15:38:20.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-23 08:45:59] production.INFO: Stock deduction for product: Mucolyn Peads 100ml  
[2026-06-23 08:45:59] production.INFO: Old stock: 12.00  
[2026-06-23 08:45:59] production.INFO: Quantity deducted: 1  
[2026-06-23 08:45:59] production.INFO: New stock: 11  
[2026-06-23 08:45:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782197158661"} 
[2026-06-23 08:51:59] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782197518164","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":2,"subtotal":12000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"128.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-22T14:32:31.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"47.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-21T11:21:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 08:51:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-23 08:51:59] production.INFO: Old stock: 128.00  
[2026-06-23 08:51:59] production.INFO: Quantity deducted: 2  
[2026-06-23 08:51:59] production.INFO: New stock: 126  
[2026-06-23 08:51:59] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-23 08:51:59] production.INFO: Old stock: 47.00  
[2026-06-23 08:51:59] production.INFO: Quantity deducted: 1  
[2026-06-23 08:51:59] production.INFO: New stock: 46  
[2026-06-23 08:51:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782197518164"} 
[2026-06-23 08:56:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782197795538","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":495,"product_id":495,"name":"LA WASH INTIMET HYGIEN","sku":"3132","price":"15000.00","selling_price":"15000.00","purchase_price":"7900.00","quantity":1,"subtotal":15000,"product":{"id":495,"name":"LA WASH INTIMET HYGIEN","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"7900.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3132","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-27T05:53:29.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 08:56:36] production.INFO: Stock deduction for product: LA WASH INTIMET HYGIEN  
[2026-06-23 08:56:36] production.INFO: Old stock: 3.00  
[2026-06-23 08:56:36] production.INFO: Quantity deducted: 1  
[2026-06-23 08:56:36] production.INFO: New stock: 2  
[2026-06-23 08:56:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782197795538"} 
[2026-06-23 09:22:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782199319365","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":5,"subtotal":10000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"30.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-10T07:34:55.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"92.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-22T16:21:35.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 09:22:00] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-23 09:22:00] production.INFO: Old stock: 30.00  
[2026-06-23 09:22:00] production.INFO: Quantity deducted: 5  
[2026-06-23 09:22:00] production.INFO: New stock: 25  
[2026-06-23 09:22:00] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-23 09:22:00] production.INFO: Old stock: 92.00  
[2026-06-23 09:22:00] production.INFO: Quantity deducted: 2  
[2026-06-23 09:22:00] production.INFO: New stock: 90  
[2026-06-23 09:22:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782199319365"} 
[2026-06-23 10:09:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782202150539","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"126.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T16:38:16.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 10:09:12] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-23 10:09:12] production.INFO: Old stock: 126.00  
[2026-06-23 10:09:12] production.INFO: Quantity deducted: 1  
[2026-06-23 10:09:12] production.INFO: New stock: 125  
[2026-06-23 10:09:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782202150539"} 
[2026-06-23 10:12:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782202343474","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"42.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T15:31:46.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 10:12:25] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-23 10:12:25] production.INFO: Old stock: 42.00  
[2026-06-23 10:12:25] production.INFO: Quantity deducted: 1  
[2026-06-23 10:12:25] production.INFO: New stock: 41  
[2026-06-23 10:12:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782202343474"} 
[2026-06-23 10:59:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782205184565","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"36.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T15:38:05.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 10:59:46] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-23 10:59:46] production.INFO: Old stock: 36.00  
[2026-06-23 10:59:46] production.INFO: Quantity deducted: 1  
[2026-06-23 10:59:46] production.INFO: New stock: 35  
[2026-06-23 10:59:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782205184565"} 
[2026-06-23 11:00:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782205221708","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"41.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-23T08:12:25.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 11:00:23] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-23 11:00:23] production.INFO: Old stock: 41.00  
[2026-06-23 11:00:23] production.INFO: Quantity deducted: 1  
[2026-06-23 11:00:23] production.INFO: New stock: 40  
[2026-06-23 11:00:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782205221708"} 
[2026-06-23 12:17:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782209870061","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"345.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T18:05:32.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"311.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T18:42:44.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 12:17:50] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-23 12:17:50] production.INFO: Old stock: 345.00  
[2026-06-23 12:17:50] production.INFO: Quantity deducted: 2  
[2026-06-23 12:17:50] production.INFO: New stock: 343  
[2026-06-23 12:17:50] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-23 12:17:50] production.INFO: Old stock: 311.00  
[2026-06-23 12:17:50] production.INFO: Quantity deducted: 2  
[2026-06-23 12:17:50] production.INFO: New stock: 309  
[2026-06-23 12:17:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782209870061"} 
[2026-06-23 12:27:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782210454442","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":2,"subtotal":11000,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T16:38:16.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":2,"subtotal":8000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"40.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-22T18:07:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 12:27:35] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-23 12:27:35] production.INFO: Old stock: 10.00  
[2026-06-23 12:27:35] production.INFO: Quantity deducted: 2  
[2026-06-23 12:27:35] production.INFO: New stock: 8  
[2026-06-23 12:27:35] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-23 12:27:35] production.INFO: Old stock: 40.00  
[2026-06-23 12:27:35] production.INFO: Quantity deducted: 2  
[2026-06-23 12:27:35] production.INFO: New stock: 38  
[2026-06-23 12:27:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782210454442"} 
[2026-06-23 12:33:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782210806049","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":771,"product_id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","sku":"3408","price":"8500.00","selling_price":"8500.00","purchase_price":"3950.00","quantity":1,"subtotal":8500,"product":{"id":771,"name":"Xonase Junior Drop (Xylometazoline 0.05%)","business_location":"EDUC Pharmacy","unit_id":"31","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"8.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3408","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T14:38:54.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 12:33:26] production.INFO: Stock deduction for product: Xonase Junior Drop (Xylometazoline 0.05%)  
[2026-06-23 12:33:26] production.INFO: Old stock: 8.00  
[2026-06-23 12:33:26] production.INFO: Quantity deducted: 1  
[2026-06-23 12:33:26] production.INFO: New stock: 7  
[2026-06-23 12:33:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782210806049"} 
[2026-06-23 12:35:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782210927657","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":152,"product_id":152,"name":"CAPLOFEN THERMAL GEL, 30g","sku":"0719","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":152,"name":"CAPLOFEN THERMAL GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0719","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-14T12:48:36.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 12:35:29] production.INFO: Stock deduction for product: CAPLOFEN THERMAL GEL, 30g  
[2026-06-23 12:35:29] production.INFO: Old stock: 7.00  
[2026-06-23 12:35:29] production.INFO: Quantity deducted: 1  
[2026-06-23 12:35:29] production.INFO: New stock: 6  
[2026-06-23 12:35:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782210927657"} 
[2026-06-23 12:46:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782211559751","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":537,"product_id":537,"name":"Maladox Tablets 3T","sku":"3174","price":"2000.00","selling_price":"2000.00","purchase_price":"1200.00","quantity":1,"subtotal":2000,"product":{"id":537,"name":"Maladox Tablets 3T","business_location":"EDUC Pharmacy","unit_id":"59","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3174","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-27T05:30:45.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":45,"product_id":45,"name":"Albendazole (Normnil)","sku":"1385","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":45,"name":"Albendazole (Normnil)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1385","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-01T10:22:05.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 12:46:01] production.INFO: Stock deduction for product: Maladox Tablets 3T  
[2026-06-23 12:46:01] production.INFO: Old stock: 24.00  
[2026-06-23 12:46:01] production.INFO: Quantity deducted: 1  
[2026-06-23 12:46:01] production.INFO: New stock: 23  
[2026-06-23 12:46:01] production.INFO: Stock deduction for product: Albendazole (Normnil)  
[2026-06-23 12:46:01] production.INFO: Old stock: 4.00  
[2026-06-23 12:46:01] production.INFO: Quantity deducted: 1  
[2026-06-23 12:46:01] production.INFO: New stock: 3  
[2026-06-23 12:46:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782211559751"} 
[2026-06-23 13:01:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782212492651","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":580,"product_id":580,"name":"Neodine Ointment 15 mg","sku":"3217","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":580,"name":"Neodine Ointment 15 mg","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3217","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-06T01:12:14.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"70.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-18T15:14:17.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 13:01:33] production.INFO: Stock deduction for product: Neodine Ointment 15 mg  
[2026-06-23 13:01:33] production.INFO: Old stock: 12.00  
[2026-06-23 13:01:33] production.INFO: Quantity deducted: 1  
[2026-06-23 13:01:33] production.INFO: New stock: 11  
[2026-06-23 13:01:33] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-23 13:01:33] production.INFO: Old stock: 70.00  
[2026-06-23 13:01:33] production.INFO: Quantity deducted: 1  
[2026-06-23 13:01:33] production.INFO: New stock: 69  
[2026-06-23 13:01:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782212492651"} 
[2026-06-23 13:21:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782213667534","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"125.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-23T08:09:12.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 13:21:08] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-23 13:21:08] production.INFO: Old stock: 125.00  
[2026-06-23 13:21:08] production.INFO: Quantity deducted: 1  
[2026-06-23 13:21:08] production.INFO: New stock: 124  
[2026-06-23 13:21:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782213667534"} 
[2026-06-23 13:38:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782214715779","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"10.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T06:12:41.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 13:38:36] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-23 13:38:36] production.INFO: Old stock: 10.00  
[2026-06-23 13:38:36] production.INFO: Quantity deducted: 2  
[2026-06-23 13:38:36] production.INFO: New stock: 8  
[2026-06-23 13:38:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782214715779"} 
[2026-06-23 14:44:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782218692948","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"70.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T13:44:31.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 14:44:52] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-23 14:44:52] production.INFO: Old stock: 70.00  
[2026-06-23 14:44:52] production.INFO: Quantity deducted: 1  
[2026-06-23 14:44:52] production.INFO: New stock: 69  
[2026-06-23 14:44:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782218692948"} 
[2026-06-23 16:45:51] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782225950440","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-06-18T10:36:38.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"126.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-23T06:51:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 16:45:51] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-06-23 16:45:51] production.INFO: Old stock: 3.00  
[2026-06-23 16:45:51] production.INFO: Quantity deducted: 1  
[2026-06-23 16:45:51] production.INFO: New stock: 2  
[2026-06-23 16:45:51] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-23 16:45:51] production.INFO: Old stock: 126.00  
[2026-06-23 16:45:51] production.INFO: Quantity deducted: 1  
[2026-06-23 16:45:51] production.INFO: New stock: 125  
[2026-06-23 16:45:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782225950440"} 
[2026-06-23 17:27:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782228436294","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-21T08:19:11.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 17:27:17] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-06-23 17:27:17] production.INFO: Old stock: 9.00  
[2026-06-23 17:27:17] production.INFO: Quantity deducted: 1  
[2026-06-23 17:27:17] production.INFO: New stock: 8  
[2026-06-23 17:27:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782228436294"} 
[2026-06-23 17:34:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782228868117","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"8.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-23T11:38:36.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 17:34:29] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-23 17:34:29] production.INFO: Old stock: 8.00  
[2026-06-23 17:34:29] production.INFO: Quantity deducted: 2  
[2026-06-23 17:34:29] production.INFO: New stock: 6  
[2026-06-23 17:34:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782228868117"} 
[2026-06-23 18:05:39] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782230739454","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"21.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-21T14:28:37.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"41.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-22T18:07:00.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-19T06:40:16.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 18:05:40] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-23 18:05:40] production.INFO: Old stock: 21.00  
[2026-06-23 18:05:40] production.INFO: Quantity deducted: 1  
[2026-06-23 18:05:40] production.INFO: New stock: 20  
[2026-06-23 18:05:40] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-23 18:05:40] production.INFO: Old stock: 41.00  
[2026-06-23 18:05:40] production.INFO: Quantity deducted: 1  
[2026-06-23 18:05:40] production.INFO: New stock: 40  
[2026-06-23 18:05:40] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-23 18:05:40] production.INFO: Old stock: 19.00  
[2026-06-23 18:05:40] production.INFO: Quantity deducted: 1  
[2026-06-23 18:05:40] production.INFO: New stock: 18  
[2026-06-23 18:05:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782230739454"} 
[2026-06-23 18:34:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782232488928","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"35.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-23T08:59:46.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 18:34:47] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-23 18:34:47] production.INFO: Old stock: 35.00  
[2026-06-23 18:34:47] production.INFO: Quantity deducted: 1  
[2026-06-23 18:34:47] production.INFO: New stock: 34  
[2026-06-23 18:34:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782232488928"} 
[2026-06-23 18:37:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782232660831","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":859,"product_id":859,"name":"Vagid 500g pessary","sku":"PRD-00859","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":859,"name":"Vagid 500g pessary","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","last_purchase_price":"3250.00","selling_price":"6500.00","current_stock":"9.00","stock":"9.00","product_type":"Single","tax":null,"sku":"PRD-00859","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:20:39.000000Z","updated_at":"2026-06-10T12:59:23.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 18:37:41] production.INFO: Stock deduction for product: Vagid 500g pessary  
[2026-06-23 18:37:41] production.INFO: Old stock: 9.00  
[2026-06-23 18:37:41] production.INFO: Quantity deducted: 1  
[2026-06-23 18:37:41] production.INFO: New stock: 8  
[2026-06-23 18:37:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782232660831"} 
[2026-06-23 19:47:45] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782236865140","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":2,"subtotal":12000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"125.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-23T14:45:51.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":859,"product_id":859,"name":"Vagid 500g pessary","sku":"PRD-00859","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":859,"name":"Vagid 500g pessary","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","last_purchase_price":"3250.00","selling_price":"6500.00","current_stock":"8.00","stock":"9.00","product_type":"Single","tax":null,"sku":"PRD-00859","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:20:39.000000Z","updated_at":"2026-06-23T16:37:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-23 19:47:45] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-23 19:47:45] production.INFO: Old stock: 125.00  
[2026-06-23 19:47:45] production.INFO: Quantity deducted: 2  
[2026-06-23 19:47:45] production.INFO: New stock: 123  
[2026-06-23 19:47:45] production.INFO: Stock deduction for product: Vagid 500g pessary  
[2026-06-23 19:47:45] production.INFO: Old stock: 8.00  
[2026-06-23 19:47:45] production.INFO: Quantity deducted: 1  
[2026-06-23 19:47:45] production.INFO: New stock: 7  
[2026-06-23 19:47:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782236865140"} 
[2026-06-23 19:52:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782237172252","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"5.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-21T12:43:13.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-23 19:52:52] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-23 19:52:52] production.INFO: Old stock: 5.00  
[2026-06-23 19:52:52] production.INFO: Quantity deducted: 1  
[2026-06-23 19:52:52] production.INFO: New stock: 4  
[2026-06-23 19:52:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782237172252"} 
[2026-06-23 20:27:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782239234182","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"123.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-23T17:47:45.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 20:27:14] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-23 20:27:14] production.INFO: Old stock: 123.00  
[2026-06-23 20:27:14] production.INFO: Quantity deducted: 1  
[2026-06-23 20:27:14] production.INFO: New stock: 122  
[2026-06-23 20:27:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782239234182"} 
[2026-06-23 20:57:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782241030169","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"8.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-22T09:28:29.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"6.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-13T14:18:47.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-23 20:57:10] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-06-23 20:57:10] production.INFO: Old stock: 8.00  
[2026-06-23 20:57:10] production.INFO: Quantity deducted: 1  
[2026-06-23 20:57:10] production.INFO: New stock: 7  
[2026-06-23 20:57:10] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-23 20:57:10] production.INFO: Old stock: 6.00  
[2026-06-23 20:57:10] production.INFO: Quantity deducted: 1  
[2026-06-23 20:57:10] production.INFO: New stock: 5  
[2026-06-23 20:57:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782241030169"} 
[2026-06-23 21:03:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782241411672","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-21T13:01:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-23 21:03:30] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-23 21:03:30] production.INFO: Old stock: 8.00  
[2026-06-23 21:03:30] production.INFO: Quantity deducted: 1  
[2026-06-23 21:03:30] production.INFO: New stock: 7  
[2026-06-23 21:03:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782241411672"} 
[2026-06-24 07:42:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782279750641","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Amoxicillin Syrup (Moxileb)","sku":"1327","price":"5000.00","selling_price":"5000.00","purchase_price":"2450.00","quantity":1,"subtotal":5000,"product":{"id":68,"name":"Amoxicillin Syrup (Moxileb)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1327","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-21T17:18:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 07:42:30] production.INFO: Stock deduction for product: Amoxicillin Syrup (Moxileb)  
[2026-06-24 07:42:30] production.INFO: Old stock: 3.00  
[2026-06-24 07:42:30] production.INFO: Quantity deducted: 1  
[2026-06-24 07:42:30] production.INFO: New stock: 2  
[2026-06-24 07:42:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782279750641"} 
[2026-06-24 08:10:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782281413171","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":413,"product_id":413,"name":"Gigapyn","sku":"3050","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":413,"name":"Gigapyn","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3050","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T14:41:30.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 08:10:12] production.INFO: Stock deduction for product: Gigapyn  
[2026-06-24 08:10:12] production.INFO: Old stock: 15.00  
[2026-06-24 08:10:12] production.INFO: Quantity deducted: 1  
[2026-06-24 08:10:12] production.INFO: New stock: 14  
[2026-06-24 08:10:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782281413171"} 
[2026-06-24 08:16:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782281766089","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":413,"product_id":413,"name":"Gigapyn","sku":"3050","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":413,"name":"Gigapyn","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"14.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3050","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-24T06:10:12.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 08:16:06] production.INFO: Stock deduction for product: Gigapyn  
[2026-06-24 08:16:06] production.INFO: Old stock: 14.00  
[2026-06-24 08:16:06] production.INFO: Quantity deducted: 1  
[2026-06-24 08:16:06] production.INFO: New stock: 13  
[2026-06-24 08:16:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782281766089"} 
[2026-06-24 08:16:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782281796097","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"69.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-23T11:01:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 08:16:34] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-06-24 08:16:34] production.INFO: Old stock: 69.00  
[2026-06-24 08:16:34] production.INFO: Quantity deducted: 1  
[2026-06-24 08:16:34] production.INFO: New stock: 68  
[2026-06-24 08:16:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782281796097"} 
[2026-06-24 08:23:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782282205089","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":117,"product_id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","sku":"0705","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0705","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-17T14:46:43.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 08:23:25] production.INFO: Stock deduction for product: BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g  
[2026-06-24 08:23:25] production.INFO: Old stock: 14.00  
[2026-06-24 08:23:25] production.INFO: Quantity deducted: 1  
[2026-06-24 08:23:25] production.INFO: New stock: 13  
[2026-06-24 08:23:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782282205089"} 
[2026-06-24 08:49:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782283790923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":402,"product_id":402,"name":"Gauze Swabs(10cm)","sku":"3039","price":"18000.00","selling_price":"18000.00","purchase_price":"10000.00","quantity":1,"subtotal":18000,"product":{"id":402,"name":"Gauze Swabs(10cm)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"6.00","stock":"6.00","product_type":"Single","tax":null,"sku":"3039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T14:32:59.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 08:49:50] production.INFO: Stock deduction for product: Gauze Swabs(10cm)  
[2026-06-24 08:49:50] production.INFO: Old stock: 6.00  
[2026-06-24 08:49:50] production.INFO: Quantity deducted: 1  
[2026-06-24 08:49:50] production.INFO: New stock: 5  
[2026-06-24 08:49:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782283790923"} 
[2026-06-24 09:56:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782287817152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"122.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-23T18:27:14.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 09:56:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-24 09:56:59] production.INFO: Old stock: 122.00  
[2026-06-24 09:56:59] production.INFO: Quantity deducted: 1  
[2026-06-24 09:56:59] production.INFO: New stock: 121  
[2026-06-24 09:56:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782287817152"} 
[2026-06-24 09:57:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782287830952","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"1.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-12","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-22T14:54:45.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 09:57:13] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-06-24 09:57:13] production.INFO: Old stock: 1.00  
[2026-06-24 09:57:13] production.INFO: Quantity deducted: 1  
[2026-06-24 09:57:13] production.INFO: New stock: 0  
[2026-06-24 09:57:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782287830952"} 
[2026-06-24 09:57:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782287859253","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"24.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T17:57:57.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 09:57:41] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-06-24 09:57:41] production.INFO: Old stock: 24.00  
[2026-06-24 09:57:41] production.INFO: Quantity deducted: 1  
[2026-06-24 09:57:41] production.INFO: New stock: 23  
[2026-06-24 09:57:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782287859253"} 
[2026-06-24 09:57:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782287871780","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"69.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-23T12:44:52.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 09:57:54] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-24 09:57:54] production.INFO: Old stock: 69.00  
[2026-06-24 09:57:54] production.INFO: Quantity deducted: 1  
[2026-06-24 09:57:54] production.INFO: New stock: 68  
[2026-06-24 09:57:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782287871780"} 
[2026-06-24 09:58:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782287880618","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"34.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-23T16:34:47.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 09:58:02] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-24 09:58:02] production.INFO: Old stock: 34.00  
[2026-06-24 09:58:02] production.INFO: Quantity deducted: 1  
[2026-06-24 09:58:02] production.INFO: New stock: 33  
[2026-06-24 09:58:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782287880618"} 
[2026-06-24 11:21:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782292918242","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":899,"product_id":899,"name":"Nervillin NT 150mg Caps","sku":"PRD-00899","price":"11500.00","selling_price":"11500.00","purchase_price":"5500.00","quantity":1,"subtotal":11500,"product":{"id":899,"name":"Nervillin NT 150mg Caps","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"11500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00899","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T07:40:33.000000Z","updated_at":"2026-06-03T07:40:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-24 11:21:57] production.INFO: Stock deduction for product: Nervillin NT 150mg Caps  
[2026-06-24 11:21:57] production.INFO: Old stock: 9.00  
[2026-06-24 11:21:57] production.INFO: Quantity deducted: 1  
[2026-06-24 11:21:57] production.INFO: New stock: 8  
[2026-06-24 11:21:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782292918242"} 
[2026-06-24 12:17:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782296273436","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"114.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T15:25:03.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":2,"subtotal":3000,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"78.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-29T11:37:32.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 12:17:52] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-24 12:17:52] production.INFO: Old stock: 114.00  
[2026-06-24 12:17:52] production.INFO: Quantity deducted: 1  
[2026-06-24 12:17:52] production.INFO: New stock: 113  
[2026-06-24 12:17:52] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-06-24 12:17:52] production.INFO: Old stock: 78.00  
[2026-06-24 12:17:52] production.INFO: Quantity deducted: 2  
[2026-06-24 12:17:52] production.INFO: New stock: 76  
[2026-06-24 12:17:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782296273436"} 
[2026-06-24 13:45:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782301536831","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":545,"product_id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","sku":"3182","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"14.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3182","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T11:23:55.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 13:45:37] production.INFO: Stock deduction for product: MEFENAMIC ACID (FENAMEX) 500MG  
[2026-06-24 13:45:37] production.INFO: Old stock: 14.00  
[2026-06-24 13:45:37] production.INFO: Quantity deducted: 1  
[2026-06-24 13:45:37] production.INFO: New stock: 13  
[2026-06-24 13:45:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782301536831"} 
[2026-06-24 13:57:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782302258476","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Amoxicillin Syrup (Moxileb)","sku":"1327","price":"5000.00","selling_price":"5000.00","purchase_price":"2450.00","quantity":1,"subtotal":5000,"product":{"id":68,"name":"Amoxicillin Syrup (Moxileb)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1327","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-24T05:42:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":897,"product_id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","sku":"PRD-00897","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00897","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:10:22.000000Z","updated_at":"2026-06-19T15:57:34.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-24 13:57:38] production.INFO: Stock deduction for product: Amoxicillin Syrup (Moxileb)  
[2026-06-24 13:57:38] production.INFO: Old stock: 2.00  
[2026-06-24 13:57:38] production.INFO: Quantity deducted: 1  
[2026-06-24 13:57:38] production.INFO: New stock: 1  
[2026-06-24 13:57:38] production.INFO: Stock deduction for product: Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL  
[2026-06-24 13:57:38] production.INFO: Old stock: 7.00  
[2026-06-24 13:57:38] production.INFO: Quantity deducted: 1  
[2026-06-24 13:57:38] production.INFO: New stock: 6  
[2026-06-24 13:57:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782302258476"} 
[2026-06-24 14:49:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782305387720","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":58,"product_id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","sku":"0672","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":2,"subtotal":3000,"product":{"id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0672","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-02T09:34:15.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"46.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-23T06:51:59.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-24 14:49:47] production.INFO: Stock deduction for product: AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB  
[2026-06-24 14:49:47] production.INFO: Old stock: 12.00  
[2026-06-24 14:49:47] production.INFO: Quantity deducted: 2  
[2026-06-24 14:49:47] production.INFO: New stock: 10  
[2026-06-24 14:49:47] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-24 14:49:47] production.INFO: Old stock: 46.00  
[2026-06-24 14:49:47] production.INFO: Quantity deducted: 1  
[2026-06-24 14:49:47] production.INFO: New stock: 45  
[2026-06-24 14:49:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782305387720"} 
[2026-06-24 15:07:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782306454180","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"4.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-23T17:52:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-24 15:07:34] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-24 15:07:34] production.INFO: Old stock: 4.00  
[2026-06-24 15:07:34] production.INFO: Quantity deducted: 1  
[2026-06-24 15:07:34] production.INFO: New stock: 3  
[2026-06-24 15:07:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782306454180"} 
[2026-06-24 15:29:18] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1782307758623","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":3,"subtotal":3000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-21T15:26:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":4,"subtotal":16000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"38.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-23T10:27:35.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":3,"subtotal":6000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"27.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T10:44:08.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"112.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T08:22:08.000000Z","brand":null,"category":null}},{"id":859,"product_id":859,"name":"Vagid 500g pessary","sku":"PRD-00859","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":859,"name":"Vagid 500g pessary","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","last_purchase_price":"3250.00","selling_price":"6500.00","current_stock":"7.00","stock":"9.00","product_type":"Single","tax":null,"sku":"PRD-00859","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:20:39.000000Z","updated_at":"2026-06-23T17:47:45.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-24 15:29:18] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-24 15:29:18] production.INFO: Old stock: 16.00  
[2026-06-24 15:29:18] production.INFO: Quantity deducted: 3  
[2026-06-24 15:29:18] production.INFO: New stock: 13  
[2026-06-24 15:29:18] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-24 15:29:18] production.INFO: Old stock: 38.00  
[2026-06-24 15:29:18] production.INFO: Quantity deducted: 4  
[2026-06-24 15:29:18] production.INFO: New stock: 34  
[2026-06-24 15:29:18] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-24 15:29:18] production.INFO: Old stock: 27.00  
[2026-06-24 15:29:18] production.INFO: Quantity deducted: 3  
[2026-06-24 15:29:18] production.INFO: New stock: 24  
[2026-06-24 15:29:18] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-24 15:29:18] production.INFO: Old stock: 112.00  
[2026-06-24 15:29:18] production.INFO: Quantity deducted: 1  
[2026-06-24 15:29:18] production.INFO: New stock: 111  
[2026-06-24 15:29:18] production.INFO: Stock deduction for product: Vagid 500g pessary  
[2026-06-24 15:29:18] production.INFO: Old stock: 7.00  
[2026-06-24 15:29:18] production.INFO: Quantity deducted: 1  
[2026-06-24 15:29:18] production.INFO: New stock: 6  
[2026-06-24 15:29:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782307758623"} 
[2026-06-24 16:05:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782309957789","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":55,"product_id":55,"name":"Amidol (Cold and Flu) Tablets","sku":"0669","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":1,"subtotal":1500,"product":{"id":55,"name":"Amidol (Cold and Flu) Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":null,"supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0669","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-26T09:57:01.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 16:05:58] production.INFO: Stock deduction for product: Amidol (Cold and Flu) Tablets  
[2026-06-24 16:05:58] production.INFO: Old stock: 25.00  
[2026-06-24 16:05:58] production.INFO: Quantity deducted: 1  
[2026-06-24 16:05:58] production.INFO: New stock: 24  
[2026-06-24 16:05:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782309957789"} 
[2026-06-24 16:09:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782310182908","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":55,"product_id":55,"name":"Amidol (Cold and Flu) Tablets","sku":"0669","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":1,"subtotal":1500,"product":{"id":55,"name":"Amidol (Cold and Flu) Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":null,"supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0669","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-24T14:05:58.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 16:09:43] production.INFO: Stock deduction for product: Amidol (Cold and Flu) Tablets  
[2026-06-24 16:09:43] production.INFO: Old stock: 24.00  
[2026-06-24 16:09:43] production.INFO: Quantity deducted: 1  
[2026-06-24 16:09:43] production.INFO: New stock: 23  
[2026-06-24 16:09:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782310182908"} 
[2026-06-24 16:15:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782310526394","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"293.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T15:08:19.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 16:15:27] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-24 16:15:27] production.INFO: Old stock: 293.00  
[2026-06-24 16:15:27] production.INFO: Quantity deducted: 2  
[2026-06-24 16:15:27] production.INFO: New stock: 291  
[2026-06-24 16:15:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782310526394"} 
[2026-06-24 16:57:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782313024710","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-06-23T14:45:51.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-24 16:57:06] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-06-24 16:57:06] production.INFO: Old stock: 2.00  
[2026-06-24 16:57:06] production.INFO: Quantity deducted: 1  
[2026-06-24 16:57:06] production.INFO: New stock: 1  
[2026-06-24 16:57:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782313024710"} 
[2026-06-24 16:57:52] production.INFO: Stock Adjustment - Initial State {"product_id":"448","previous_quantity":"6.00","previous_selling_price":"11000.00","validated_data":{"product_id":"448","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-24"}} 
[2026-06-24 16:57:52] production.INFO: Stock Adjustment - After Quantity Save {"product_id":448,"new_quantity":16.0,"current_stock":16.0,"changes_made":"Quantity adjusted"} 
[2026-06-24 16:58:12] production.INFO: Stock Adjustment - Initial State {"product_id":"714","previous_quantity":"2.00","previous_selling_price":"8500.00","validated_data":{"product_id":"714","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-24"}} 
[2026-06-24 16:58:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":714,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-24 16:59:21] production.INFO: Stock Adjustment - Initial State {"product_id":"272","previous_quantity":"0.00","previous_selling_price":"5000.00","validated_data":{"product_id":"272","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":"3000.00","new_expiry_date":"2026-06-24"}} 
[2026-06-24 16:59:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":272,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-24 17:01:42] production.INFO: Stock Adjustment - Initial State {"product_id":"144","previous_quantity":"0.00","previous_selling_price":"3500.00","validated_data":{"product_id":"144","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"7000.00","new_purchase_price":"3500.00","new_expiry_date":"2026-06-24"}} 
[2026-06-24 17:01:42] production.INFO: Stock Adjustment - After Quantity Save {"product_id":144,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-24 17:04:40] production.INFO: Product Store - Request Data {"all_data":{"_token":"X4D7x9kNC0YLFP4ohtYiaVc0PMpssw50FNns01t8","name":"Iron (Cachfer) Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"2000.00","selling_price":"4000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-24 17:04:40] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Iron (Cachfer) Syrup","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2000.00","selling_price":"4000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-24 17:04:40] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Iron (Cachfer) Syrup","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2000.00","selling_price":"4000.00","sku":"PRD-00914","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"2000.00","last_purchase_date":"2026-06-24 17:04:40"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-24 17:04:40] production.INFO: Product Store - Product Created {"product_id":914,"product_name":"Iron (Cachfer) Syrup","product_sku":"PRD-00914"} 
[2026-06-24 17:07:59] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782313676245","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"10.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T16:20:57.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":2,"subtotal":2000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"168.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-18T15:55:45.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 17:07:59] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-24 17:07:59] production.INFO: Old stock: 10.00  
[2026-06-24 17:07:59] production.INFO: Quantity deducted: 1  
[2026-06-24 17:07:59] production.INFO: New stock: 9  
[2026-06-24 17:07:59] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-06-24 17:07:59] production.INFO: Old stock: 168.00  
[2026-06-24 17:07:59] production.INFO: Quantity deducted: 2  
[2026-06-24 17:07:59] production.INFO: New stock: 166  
[2026-06-24 17:07:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782313676245"} 
[2026-06-24 17:23:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782314596073","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":4,"subtotal":1200,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"309.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-23T10:17:50.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 17:23:17] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-24 17:23:17] production.INFO: Old stock: 309.00  
[2026-06-24 17:23:17] production.INFO: Quantity deducted: 4  
[2026-06-24 17:23:17] production.INFO: New stock: 305  
[2026-06-24 17:23:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782314596073"} 
[2026-06-24 17:45:32] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782315930508","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":274,"product_id":274,"name":"ELAGRA 100mg Tablets","sku":"0794","price":"4000.00","selling_price":"4000.00","purchase_price":"1500.00","quantity":1,"subtotal":4000,"product":{"id":274,"name":"ELAGRA 100mg Tablets","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"36","brand_id":"28","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"18.00","stock":"20.00","product_type":"Single","tax":null,"sku":"0794","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-13T13:14:19.000000Z","brand":{"id":28,"name":"CORAL LOBARATORIES","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"59.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-18T14:55:50.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":2,"subtotal":4000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"23.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T16:07:17.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"45.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-24T12:49:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 17:45:32] production.INFO: Stock deduction for product: ELAGRA 100mg Tablets  
[2026-06-24 17:45:32] production.INFO: Old stock: 18.00  
[2026-06-24 17:45:32] production.INFO: Quantity deducted: 1  
[2026-06-24 17:45:32] production.INFO: New stock: 17  
[2026-06-24 17:45:32] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-06-24 17:45:32] production.INFO: Old stock: 59.00  
[2026-06-24 17:45:32] production.INFO: Quantity deducted: 1  
[2026-06-24 17:45:32] production.INFO: New stock: 58  
[2026-06-24 17:45:32] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-06-24 17:45:32] production.INFO: Old stock: 23.00  
[2026-06-24 17:45:32] production.INFO: Quantity deducted: 2  
[2026-06-24 17:45:32] production.INFO: New stock: 21  
[2026-06-24 17:45:32] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-24 17:45:32] production.INFO: Old stock: 45.00  
[2026-06-24 17:45:32] production.INFO: Quantity deducted: 2  
[2026-06-24 17:45:32] production.INFO: New stock: 43  
[2026-06-24 17:45:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782315930508"} 
[2026-06-24 18:24:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782318253955","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","sku":"0774","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0774","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:47:03.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 18:24:15] production.INFO: Stock deduction for product: DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)  
[2026-06-24 18:24:15] production.INFO: Old stock: 11.00  
[2026-06-24 18:24:15] production.INFO: Quantity deducted: 1  
[2026-06-24 18:24:15] production.INFO: New stock: 10  
[2026-06-24 18:24:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782318253955"} 
[2026-06-24 18:54:30] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782320069380","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":651,"product_id":651,"name":"PREGABALINE 75MG(NERVILIN)","sku":"3288","price":"8000.00","selling_price":"8000.00","purchase_price":"2500.00","quantity":1,"subtotal":8000,"product":{"id":651,"name":"PREGABALINE 75MG(NERVILIN)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"7.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3288","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T14:48:05.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":673,"product_id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","sku":"3310","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-01T09:59:32.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 18:54:31] production.INFO: Stock deduction for product: PREGABALINE 75MG(NERVILIN)  
[2026-06-24 18:54:31] production.INFO: Old stock: 7.00  
[2026-06-24 18:54:31] production.INFO: Quantity deducted: 1  
[2026-06-24 18:54:31] production.INFO: New stock: 6  
[2026-06-24 18:54:31] production.INFO: Stock deduction for product: RUFENAC GEL (Diclofenac gel), 30g  
[2026-06-24 18:54:31] production.INFO: Old stock: 3.00  
[2026-06-24 18:54:31] production.INFO: Quantity deducted: 1  
[2026-06-24 18:54:31] production.INFO: New stock: 2  
[2026-06-24 18:54:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782320069380"} 
[2026-06-24 20:09:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782324593418","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"33.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T07:58:02.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 20:09:53] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-24 20:09:53] production.INFO: Old stock: 33.00  
[2026-06-24 20:09:53] production.INFO: Quantity deducted: 1  
[2026-06-24 20:09:53] production.INFO: New stock: 32  
[2026-06-24 20:09:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782324593418"} 
[2026-06-24 20:10:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782324617457","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"305.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T15:23:17.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 20:10:17] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-24 20:10:17] production.INFO: Old stock: 305.00  
[2026-06-24 20:10:17] production.INFO: Quantity deducted: 1  
[2026-06-24 20:10:17] production.INFO: New stock: 304  
[2026-06-24 20:10:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782324617457"} 
[2026-06-24 20:19:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782325139816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"68.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-24T07:57:54.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 20:19:00] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-24 20:19:00] production.INFO: Old stock: 68.00  
[2026-06-24 20:19:00] production.INFO: Quantity deducted: 1  
[2026-06-24 20:19:00] production.INFO: New stock: 67  
[2026-06-24 20:19:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782325139816"} 
[2026-06-24 20:20:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782325229303","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"208.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T15:06:20.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-24 20:20:29] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-24 20:20:29] production.INFO: Old stock: 208.00  
[2026-06-24 20:20:29] production.INFO: Quantity deducted: 2  
[2026-06-24 20:20:29] production.INFO: New stock: 206  
[2026-06-24 20:20:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782325229303"} 
[2026-06-24 21:01:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782327665022","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":898,"product_id":898,"name":"Hydrocortisone Cream(Elycort)","sku":"PRD-00898","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":898,"name":"Hydrocortisone Cream(Elycort)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00898","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:20:42.000000Z","updated_at":"2026-06-20T16:01:11.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-24 21:01:05] production.INFO: Stock deduction for product: Hydrocortisone Cream(Elycort)  
[2026-06-24 21:01:05] production.INFO: Old stock: 2.00  
[2026-06-24 21:01:05] production.INFO: Quantity deducted: 1  
[2026-06-24 21:01:05] production.INFO: New stock: 1  
[2026-06-24 21:01:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782327665022"} 
[2026-06-25 08:38:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782369522575","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"26.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-20T15:22:21.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"8000.00","selling_price":"8000.00","purchase_price":"5000.00","quantity":1,"subtotal":8000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"14.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T11:03:17.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 08:38:43] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-25 08:38:43] production.INFO: Old stock: 26.00  
[2026-06-25 08:38:43] production.INFO: Quantity deducted: 1  
[2026-06-25 08:38:43] production.INFO: New stock: 25  
[2026-06-25 08:38:43] production.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-06-25 08:38:43] production.INFO: Old stock: 14.00  
[2026-06-25 08:38:43] production.INFO: Quantity deducted: 1  
[2026-06-25 08:38:43] production.INFO: New stock: 13  
[2026-06-25 08:38:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782369522575"} 
[2026-06-25 08:57:02] production.INFO: Stock Adjustment - Initial State {"product_id":"621","previous_quantity":"9.00","previous_selling_price":"11000.00","validated_data":{"product_id":"621","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":"2600.00","new_expiry_date":"2026-06-25"}} 
[2026-06-25 08:57:02] production.INFO: Stock Adjustment - After Quantity Save {"product_id":621,"new_quantity":19.0,"current_stock":19.0,"changes_made":"Quantity adjusted"} 
[2026-06-25 08:57:52] production.INFO: Stock Adjustment - Initial State {"product_id":"532","previous_quantity":"0.00","previous_selling_price":"3500.00","validated_data":{"product_id":"532","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":"1800.00","new_expiry_date":"2026-06-25"}} 
[2026-06-25 08:57:52] production.INFO: Stock Adjustment - After Quantity Save {"product_id":532,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-06-25 08:59:01] production.INFO: Stock Adjustment - Initial State {"product_id":"531","previous_quantity":"2.00","previous_selling_price":"4000.00","validated_data":{"product_id":"531","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"5000.00","new_purchase_price":"2400.00","new_expiry_date":"2026-06-25"}} 
[2026-06-25 08:59:01] production.INFO: Stock Adjustment - After Quantity Save {"product_id":531,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-25 09:11:06] production.INFO: Product Store - Request Data {"all_data":{"_token":"3hOJygmaefzwD1bwYSP9Hx3toTMsE38NooPsEZfb","name":"I-up (Ferrous + Folic) Tablet","sku":null,"category_id":"7","brand_id":"8","unit_id":"65","purchase_price":"1700.00","selling_price":"3500.00","description":null,"purchase_quantity":"15.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-25 09:11:06] production.INFO: Product Store - Validation Success {"validated_data":{"name":"I-up (Ferrous + Folic) Tablet","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","selling_price":"3500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-25 09:11:06] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"I-up (Ferrous + Folic) Tablet","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","selling_price":"3500.00","sku":"PRD-00915","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"15.00","last_purchase_price":"1700.00","last_purchase_date":"2026-06-25 09:11:06"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-25 09:11:06] production.INFO: Product Store - Product Created {"product_id":915,"product_name":"I-up (Ferrous + Folic) Tablet","product_sku":"PRD-00915"} 
[2026-06-25 09:12:28] production.INFO: Stock Adjustment - Initial State {"product_id":"665","previous_quantity":"1.00","previous_selling_price":"16000.00","validated_data":{"product_id":"665","adjustment_type":"add","quantity":"6","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-25"}} 
[2026-06-25 09:12:28] production.INFO: Stock Adjustment - After Quantity Save {"product_id":665,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-06-25 09:13:41] production.INFO: Stock Adjustment - Initial State {"product_id":"160","previous_quantity":"2.00","previous_selling_price":"7500.00","validated_data":{"product_id":"160","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"4700.00","new_purchase_price":"9500.00","new_expiry_date":"2026-06-25"}} 
[2026-06-25 09:13:41] production.INFO: Stock Adjustment - After Quantity Save {"product_id":160,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-06-25 09:14:14] production.INFO: Stock Adjustment - Initial State {"product_id":"160","previous_quantity":"12.00","previous_selling_price":"4700.00","validated_data":{"product_id":"160","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"9500.00","new_purchase_price":"4700.00","new_expiry_date":"2026-06-25"}} 
[2026-06-25 09:14:14] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":160,"new_selling_price":"9500.00","current_stock":"12.00","changes_made":"Prices updated only"} 
[2026-06-25 09:15:26] production.INFO: Stock Adjustment - Initial State {"product_id":"607","previous_quantity":"0.00","previous_selling_price":"5000.00","validated_data":{"product_id":"607","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"8000.00","new_purchase_price":"3900.00","new_expiry_date":"2026-06-25"}} 
[2026-06-25 09:15:26] production.INFO: Stock Adjustment - After Quantity Save {"product_id":607,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-06-25 09:16:59] production.INFO: Product Store - Request Data {"all_data":{"_token":"3hOJygmaefzwD1bwYSP9Hx3toTMsE38NooPsEZfb","name":"Loobid Tablet","sku":null,"category_id":"7","brand_id":"8","unit_id":"65","purchase_price":"4950.00","selling_price":"10000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"10","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-25 09:16:59] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Loobid Tablet","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4950.00","selling_price":"10000.00","sku":null,"alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-25 09:16:59] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Loobid Tablet","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4950.00","selling_price":"10000.00","sku":"PRD-00916","alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"4950.00","last_purchase_date":"2026-06-25 09:16:59"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-25 09:16:59] production.INFO: Product Store - Product Created {"product_id":916,"product_name":"Loobid Tablet","product_sku":"PRD-00916"} 
[2026-06-25 10:39:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782376768732","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":665,"product_id":665,"name":"Re-Cart Capsule","sku":"3302","price":"16000.00","selling_price":"16000.00","purchase_price":"8000.00","quantity":1,"subtotal":16000,"product":{"id":665,"name":"Re-Cart Capsule","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"3302","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-25T07:12:28.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-25 10:39:31] production.INFO: Stock deduction for product: Re-Cart Capsule  
[2026-06-25 10:39:31] production.INFO: Old stock: 7.00  
[2026-06-25 10:39:31] production.INFO: Quantity deducted: 1  
[2026-06-25 10:39:31] production.INFO: New stock: 6  
[2026-06-25 10:39:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782376768732"} 
[2026-06-25 11:06:50] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782378409613","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"64.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T10:39:19.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":586,"product_id":586,"name":"Nifedipine 20mg Retard","sku":"3223","price":"1500.00","selling_price":"1500.00","purchase_price":"800.00","quantity":1,"subtotal":1500,"product":{"id":586,"name":"Nifedipine 20mg Retard","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"800.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3223","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-06T12:19:07.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":528,"product_id":528,"name":"LOSARTAN POTASSIUM","sku":"3165","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":528,"name":"LOSARTAN POTASSIUM","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"87.00","stock":"88.00","product_type":"Single","tax":null,"sku":"3165","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-19T15:01:48.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 11:06:50] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-06-25 11:06:50] production.INFO: Old stock: 64.00  
[2026-06-25 11:06:50] production.INFO: Quantity deducted: 1  
[2026-06-25 11:06:50] production.INFO: New stock: 63  
[2026-06-25 11:06:50] production.INFO: Stock deduction for product: Nifedipine 20mg Retard  
[2026-06-25 11:06:50] production.INFO: Old stock: 2.00  
[2026-06-25 11:06:50] production.INFO: Quantity deducted: 1  
[2026-06-25 11:06:50] production.INFO: New stock: 1  
[2026-06-25 11:06:50] production.INFO: Stock deduction for product: LOSARTAN POTASSIUM  
[2026-06-25 11:06:50] production.INFO: Old stock: 87.00  
[2026-06-25 11:06:50] production.INFO: Quantity deducted: 1  
[2026-06-25 11:06:50] production.INFO: New stock: 86  
[2026-06-25 11:06:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782378409613"} 
[2026-06-25 11:20:42] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782379243141","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":801,"product_id":801,"name":"Cotton 500g (Karemax)","sku":"1205","price":"19000.00","selling_price":"19000.00","purchase_price":"10000.00","quantity":1,"subtotal":19000,"product":{"id":801,"name":"Cotton 500g (Karemax)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"19000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1205","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-03-06T01:58:30.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":714,"product_id":714,"name":"Surgical Spirit","sku":"3351","price":"8500.00","selling_price":"8500.00","purchase_price":"4100.00","quantity":2,"subtotal":17000,"product":{"id":714,"name":"Surgical Spirit","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"4100.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"3351","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T14:58:12.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-25 11:20:42] production.INFO: Stock deduction for product: Cotton 500g (Karemax)  
[2026-06-25 11:20:42] production.INFO: Old stock: 1.00  
[2026-06-25 11:20:42] production.INFO: Quantity deducted: 1  
[2026-06-25 11:20:42] production.INFO: New stock: 0  
[2026-06-25 11:20:42] production.INFO: Stock deduction for product: Surgical Spirit  
[2026-06-25 11:20:42] production.INFO: Old stock: 7.00  
[2026-06-25 11:20:42] production.INFO: Quantity deducted: 2  
[2026-06-25 11:20:42] production.INFO: New stock: 5  
[2026-06-25 11:20:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782379243141"} 
[2026-06-25 11:27:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782379639518","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":182,"product_id":182,"name":"CITI TABLETS (Ciprofloxacin 500mg & Tinidazole 600mg)","sku":"0734","price":"6000.00","selling_price":"6000.00","purchase_price":"3300.00","quantity":1,"subtotal":6000,"product":{"id":182,"name":"CITI TABLETS (Ciprofloxacin 500mg & Tinidazole 600mg)","business_location":"EDUC Pharmacy","unit_id":"13","category_id":"39","brand_id":"3","supplier_id":null,"purchase_price":"3300.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0734","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-03-06T00:20:01.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 11:27:19] production.INFO: Stock deduction for product: CITI TABLETS (Ciprofloxacin 500mg & Tinidazole 600mg)  
[2026-06-25 11:27:19] production.INFO: Old stock: 13.00  
[2026-06-25 11:27:19] production.INFO: Quantity deducted: 1  
[2026-06-25 11:27:19] production.INFO: New stock: 12  
[2026-06-25 11:27:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782379639518"} 
[2026-06-25 11:27:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782379672973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"16.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-21T08:57:24.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 11:27:52] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-06-25 11:27:52] production.INFO: Old stock: 16.00  
[2026-06-25 11:27:52] production.INFO: Quantity deducted: 1  
[2026-06-25 11:27:52] production.INFO: New stock: 15  
[2026-06-25 11:27:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782379672973"} 
[2026-06-25 12:12:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782382354362","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"32.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T18:09:53.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 12:12:36] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-25 12:12:36] production.INFO: Old stock: 32.00  
[2026-06-25 12:12:36] production.INFO: Quantity deducted: 1  
[2026-06-25 12:12:36] production.INFO: New stock: 31  
[2026-06-25 12:12:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782382354362"} 
[2026-06-25 13:24:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782386674014","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"31.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-25T10:12:36.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 13:24:36] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-25 13:24:36] production.INFO: Old stock: 31.00  
[2026-06-25 13:24:36] production.INFO: Quantity deducted: 1  
[2026-06-25 13:24:36] production.INFO: New stock: 30  
[2026-06-25 13:24:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782386674014"} 
[2026-06-25 13:59:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782388773567","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"3.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T15:34:01.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 13:59:33] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-25 13:59:33] production.INFO: Old stock: 3.00  
[2026-06-25 13:59:33] production.INFO: Quantity deducted: 1  
[2026-06-25 13:59:33] production.INFO: New stock: 2  
[2026-06-25 13:59:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782388773567"} 
[2026-06-25 14:21:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782390071816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"20.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-23T16:05:40.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 14:21:12] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-25 14:21:12] production.INFO: Old stock: 20.00  
[2026-06-25 14:21:12] production.INFO: Quantity deducted: 1  
[2026-06-25 14:21:12] production.INFO: New stock: 19  
[2026-06-25 14:21:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782390071816"} 
[2026-06-25 14:48:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782391706730","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"9.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T14:35:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-25 14:48:27] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-06-25 14:48:27] production.INFO: Old stock: 9.00  
[2026-06-25 14:48:27] production.INFO: Quantity deducted: 1  
[2026-06-25 14:48:27] production.INFO: New stock: 8  
[2026-06-25 14:48:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782391706730"} 
[2026-06-25 15:07:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782392854386","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"18.00","stock":"18.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T14:25:52.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 15:07:35] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-25 15:07:35] production.INFO: Old stock: 18.00  
[2026-06-25 15:07:35] production.INFO: Quantity deducted: 1  
[2026-06-25 15:07:35] production.INFO: New stock: 17  
[2026-06-25 15:07:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782392854386"} 
[2026-06-25 15:28:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782394085115","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"16.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-24T14:57:52.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 15:28:08] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-25 15:28:08] production.INFO: Old stock: 16.00  
[2026-06-25 15:28:08] production.INFO: Quantity deducted: 1  
[2026-06-25 15:28:08] production.INFO: New stock: 15  
[2026-06-25 15:28:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782394085115"} 
[2026-06-25 15:53:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782395603628","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":165,"product_id":165,"name":"CEFUROXIME AXETIL TABLETS (CELZA 500)","sku":"0727","price":"20000.00","selling_price":"20000.00","purchase_price":"5500.00","quantity":1,"subtotal":20000,"product":{"id":165,"name":"CEFUROXIME AXETIL TABLETS (CELZA 500)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0727","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-04T09:41:54.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 15:53:23] production.INFO: Stock deduction for product: CEFUROXIME AXETIL TABLETS (CELZA 500)  
[2026-06-25 15:53:23] production.INFO: Old stock: 8.00  
[2026-06-25 15:53:23] production.INFO: Quantity deducted: 1  
[2026-06-25 15:53:23] production.INFO: New stock: 7  
[2026-06-25 15:53:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782395603628"} 
[2026-06-25 16:40:36] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782398435670","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"40.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-23T09:00:23.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":844,"product_id":844,"name":"Nifipine 20 Mg Sustained Release","sku":"PRD-00844","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":1,"subtotal":1500,"product":{"id":844,"name":"Nifipine 20 Mg Sustained Release","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"600.00","last_purchase_price":"600.00","selling_price":"1500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00844","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T14:30:46.000000Z","updated_at":"2026-04-18T14:30:46.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 16:40:36] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-25 16:40:36] production.INFO: Old stock: 40.00  
[2026-06-25 16:40:36] production.INFO: Quantity deducted: 1  
[2026-06-25 16:40:36] production.INFO: New stock: 39  
[2026-06-25 16:40:36] production.INFO: Stock deduction for product: Nifipine 20 Mg Sustained Release  
[2026-06-25 16:40:36] production.INFO: Old stock: 20.00  
[2026-06-25 16:40:36] production.INFO: Quantity deducted: 1  
[2026-06-25 16:40:36] production.INFO: New stock: 19  
[2026-06-25 16:40:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782398435670"} 
[2026-06-25 17:05:21] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1782399920167","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":1,"subtotal":800,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"32.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-19T15:01:48.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":1,"subtotal":2000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"25.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-23T07:22:00.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":62,"product_id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","sku":"0675","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"33.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0675","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-22T07:54:26.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"113.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-24T10:17:52.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"40.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-23T16:05:40.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"81.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-12T14:28:13.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 17:05:21] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-06-25 17:05:21] production.INFO: Old stock: 32.00  
[2026-06-25 17:05:21] production.INFO: Quantity deducted: 1  
[2026-06-25 17:05:21] production.INFO: New stock: 31  
[2026-06-25 17:05:21] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-25 17:05:21] production.INFO: Old stock: 25.00  
[2026-06-25 17:05:21] production.INFO: Quantity deducted: 1  
[2026-06-25 17:05:21] production.INFO: New stock: 24  
[2026-06-25 17:05:21] production.INFO: Stock deduction for product: AMLODIPINE TABLET 10MG-ZAAR-10  
[2026-06-25 17:05:21] production.INFO: Old stock: 33.00  
[2026-06-25 17:05:21] production.INFO: Quantity deducted: 1  
[2026-06-25 17:05:21] production.INFO: New stock: 32  
[2026-06-25 17:05:21] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-25 17:05:21] production.INFO: Old stock: 113.00  
[2026-06-25 17:05:21] production.INFO: Quantity deducted: 1  
[2026-06-25 17:05:21] production.INFO: New stock: 112  
[2026-06-25 17:05:21] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-25 17:05:21] production.INFO: Old stock: 40.00  
[2026-06-25 17:05:21] production.INFO: Quantity deducted: 1  
[2026-06-25 17:05:21] production.INFO: New stock: 39  
[2026-06-25 17:05:21] production.INFO: Stock deduction for product: HEDAX  
[2026-06-25 17:05:21] production.INFO: Old stock: 81.00  
[2026-06-25 17:05:21] production.INFO: Quantity deducted: 1  
[2026-06-25 17:05:21] production.INFO: New stock: 80  
[2026-06-25 17:05:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782399920167"} 
[2026-06-25 17:40:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782402006960","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-06-16T13:47:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-25 17:40:07] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-06-25 17:40:07] production.INFO: Old stock: 5.00  
[2026-06-25 17:40:07] production.INFO: Quantity deducted: 1  
[2026-06-25 17:40:07] production.INFO: New stock: 4  
[2026-06-25 17:40:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782402006960"} 
[2026-06-25 17:42:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782402147112","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":142,"product_id":142,"name":"BROXOL-D SYRUP, 100ml","sku":"0711","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":142,"name":"BROXOL-D SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"3250.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"8.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0711","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-18T14:52:33.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"121.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-24T07:56:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-25 17:42:28] production.INFO: Stock deduction for product: BROXOL-D SYRUP, 100ml  
[2026-06-25 17:42:28] production.INFO: Old stock: 8.00  
[2026-06-25 17:42:28] production.INFO: Quantity deducted: 1  
[2026-06-25 17:42:28] production.INFO: New stock: 7  
[2026-06-25 17:42:28] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-25 17:42:28] production.INFO: Old stock: 121.00  
[2026-06-25 17:42:28] production.INFO: Quantity deducted: 1  
[2026-06-25 17:42:28] production.INFO: New stock: 120  
[2026-06-25 17:42:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782402147112"} 
[2026-06-25 17:49:13] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782402554153","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":109,"product_id":109,"name":"Benylin with Codeine","sku":"1335","price":"50000.00","selling_price":"50000.00","purchase_price":"27000.00","quantity":1,"subtotal":50000,"product":{"id":109,"name":"Benylin with Codeine","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"27000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"2.00","stock":"6.00","product_type":"Single","tax":null,"sku":"1335","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-10T07:34:34.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"57.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-19T10:16:31.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 17:49:13] production.INFO: Stock deduction for product: Benylin with Codeine  
[2026-06-25 17:49:13] production.INFO: Old stock: 2.00  
[2026-06-25 17:49:13] production.INFO: Quantity deducted: 1  
[2026-06-25 17:49:13] production.INFO: New stock: 1  
[2026-06-25 17:49:13] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-25 17:49:13] production.INFO: Old stock: 57.00  
[2026-06-25 17:49:13] production.INFO: Quantity deducted: 1  
[2026-06-25 17:49:13] production.INFO: New stock: 56  
[2026-06-25 17:49:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782402554153"} 
[2026-06-25 18:08:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782403700281","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-23T16:05:40.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 18:08:20] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-25 18:08:20] production.INFO: Old stock: 18.00  
[2026-06-25 18:08:20] production.INFO: Quantity deducted: 1  
[2026-06-25 18:08:20] production.INFO: New stock: 17  
[2026-06-25 18:08:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782403700281"} 
[2026-06-25 18:28:41] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782404917782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":1,"subtotal":800,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"31.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-25T15:05:21.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"90.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-23T07:22:00.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-25 18:28:41] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-06-25 18:28:41] production.INFO: Old stock: 31.00  
[2026-06-25 18:28:41] production.INFO: Quantity deducted: 1  
[2026-06-25 18:28:41] production.INFO: New stock: 30  
[2026-06-25 18:28:41] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-25 18:28:41] production.INFO: Old stock: 90.00  
[2026-06-25 18:28:41] production.INFO: Quantity deducted: 1  
[2026-06-25 18:28:41] production.INFO: New stock: 89  
[2026-06-25 18:28:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782404917782"} 
[2026-06-25 18:57:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782406671910","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"120.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-25T15:42:28.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 18:57:52] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-25 18:57:52] production.INFO: Old stock: 120.00  
[2026-06-25 18:57:52] production.INFO: Quantity deducted: 1  
[2026-06-25 18:57:52] production.INFO: New stock: 119  
[2026-06-25 18:57:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782406671910"} 
[2026-06-25 19:03:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782407018733","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":202,"product_id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","sku":"0763","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"5.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0763","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-17T15:46:14.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 19:03:40] production.INFO: Stock deduction for product: DACOF PEADEATRIC SYRUP, 100ml  
[2026-06-25 19:03:40] production.INFO: Old stock: 5.00  
[2026-06-25 19:03:40] production.INFO: Quantity deducted: 1  
[2026-06-25 19:03:40] production.INFO: New stock: 4  
[2026-06-25 19:03:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782407018733"} 
[2026-06-25 19:36:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782409005206","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":2,"subtotal":12000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"119.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-25T16:57:52.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"24.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-24T14:08:08.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-25 19:36:47] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-25 19:36:47] production.INFO: Old stock: 119.00  
[2026-06-25 19:36:47] production.INFO: Quantity deducted: 2  
[2026-06-25 19:36:47] production.INFO: New stock: 117  
[2026-06-25 19:36:47] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-25 19:36:47] production.INFO: Old stock: 24.00  
[2026-06-25 19:36:47] production.INFO: Quantity deducted: 1  
[2026-06-25 19:36:47] production.INFO: New stock: 23  
[2026-06-25 19:36:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782409005206"} 
[2026-06-25 20:17:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782411468838","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":474,"product_id":474,"name":"KAMAGRA ORAL JELLY 50mg","sku":"3111","price":"5000.00","selling_price":"5000.00","purchase_price":"2600.00","quantity":1,"subtotal":5000,"product":{"id":474,"name":"KAMAGRA ORAL JELLY 50mg","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3111","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-19T17:38:03.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-25 20:17:48] production.INFO: Stock deduction for product: KAMAGRA ORAL JELLY 50mg  
[2026-06-25 20:17:48] production.INFO: Old stock: 6.00  
[2026-06-25 20:17:48] production.INFO: Quantity deducted: 1  
[2026-06-25 20:17:48] production.INFO: New stock: 5  
[2026-06-25 20:17:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782411468838"} 
[2026-06-25 20:21:23] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782411681941","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":42,"product_id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","sku":"0690","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"2.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0690","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-11T13:54:56.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"117.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-25T17:36:47.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"39.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-25T15:05:21.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-25 20:21:23] production.INFO: Stock deduction for product: AGYCIN (Azithromycin 40mg/ml Susp.), 15ml  
[2026-06-25 20:21:23] production.INFO: Old stock: 2.00  
[2026-06-25 20:21:23] production.INFO: Quantity deducted: 1  
[2026-06-25 20:21:23] production.INFO: New stock: 1  
[2026-06-25 20:21:23] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-25 20:21:23] production.INFO: Old stock: 117.00  
[2026-06-25 20:21:23] production.INFO: Quantity deducted: 1  
[2026-06-25 20:21:23] production.INFO: New stock: 116  
[2026-06-25 20:21:23] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-25 20:21:23] production.INFO: Old stock: 39.00  
[2026-06-25 20:21:23] production.INFO: Quantity deducted: 1  
[2026-06-25 20:21:23] production.INFO: New stock: 38  
[2026-06-25 20:21:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782411681941"} 
[2026-06-26 08:35:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782455716122","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"30.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-25T11:24:36.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 08:35:16] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-26 08:35:16] production.INFO: Old stock: 30.00  
[2026-06-26 08:35:16] production.INFO: Quantity deducted: 1  
[2026-06-26 08:35:16] production.INFO: New stock: 29  
[2026-06-26 08:35:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782455716122"} 
[2026-06-26 08:55:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782456951132","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":415,"product_id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","sku":"3052","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-17T14:27:52.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 08:55:51] production.INFO: Stock deduction for product: Glam & Glory (Snail White Lotion) 25ml  
[2026-06-26 08:55:51] production.INFO: Old stock: 7.00  
[2026-06-26 08:55:51] production.INFO: Quantity deducted: 1  
[2026-06-26 08:55:51] production.INFO: New stock: 6  
[2026-06-26 08:55:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782456951132"} 
[2026-06-26 10:54:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782464073667","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":4,"subtotal":14000,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-19T12:57:23.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":167,"product_id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","sku":"0729","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"49.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0729","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-21T15:42:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":10000},{"method":"airtel_money","amount":5000}]}} 
[2026-06-26 11:06:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782464774706","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"67.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-24T18:19:00.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 11:06:16] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-26 11:06:16] production.INFO: Old stock: 67.00  
[2026-06-26 11:06:16] production.INFO: Quantity deducted: 1  
[2026-06-26 11:06:16] production.INFO: New stock: 66  
[2026-06-26 11:06:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782464774706"} 
[2026-06-26 12:08:46] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782468527610","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":737,"product_id":737,"name":"Tripride 2","sku":"3374","price":"18500.00","selling_price":"18500.00","purchase_price":"9300.00","quantity":3,"subtotal":55500,"product":{"id":737,"name":"Tripride 2","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":null,"supplier_id":null,"purchase_price":"9300.00","last_purchase_price":null,"selling_price":"18500.00","current_stock":"35.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3374","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T13:21:31.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":680,"product_id":680,"name":"SD Check","sku":"3317","price":"50000.00","selling_price":"50000.00","purchase_price":"29000.00","quantity":1,"subtotal":50000,"product":{"id":680,"name":"SD Check","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"29000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"8.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3317","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-08T13:41:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":5,"subtotal":20000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"14.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-04T08:09:27.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 12:08:46] production.INFO: Stock deduction for product: Tripride 2  
[2026-06-26 12:08:46] production.INFO: Old stock: 35.00  
[2026-06-26 12:08:46] production.INFO: Quantity deducted: 3  
[2026-06-26 12:08:46] production.INFO: New stock: 32  
[2026-06-26 12:08:46] production.INFO: Stock deduction for product: SD Check  
[2026-06-26 12:08:46] production.INFO: Old stock: 8.00  
[2026-06-26 12:08:46] production.INFO: Quantity deducted: 1  
[2026-06-26 12:08:46] production.INFO: New stock: 7  
[2026-06-26 12:08:46] production.INFO: Stock deduction for product: Softcare Pad  
[2026-06-26 12:08:46] production.INFO: Old stock: 14.00  
[2026-06-26 12:08:46] production.INFO: Quantity deducted: 5  
[2026-06-26 12:08:46] production.INFO: New stock: 9  
[2026-06-26 12:08:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782468527610"} 
[2026-06-26 12:09:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782468580961","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"29.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T06:35:16.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 12:09:40] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-26 12:09:40] production.INFO: Old stock: 29.00  
[2026-06-26 12:09:40] production.INFO: Quantity deducted: 1  
[2026-06-26 12:09:40] production.INFO: New stock: 28  
[2026-06-26 12:09:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782468580961"} 
[2026-06-26 12:56:08] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782471368651","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":3,"subtotal":1200,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"25.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-17T07:50:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"38.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-25T18:21:23.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 12:56:08] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-26 12:56:08] production.INFO: Old stock: 25.00  
[2026-06-26 12:56:08] production.INFO: Quantity deducted: 3  
[2026-06-26 12:56:08] production.INFO: New stock: 22  
[2026-06-26 12:56:08] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-26 12:56:08] production.INFO: Old stock: 38.00  
[2026-06-26 12:56:08] production.INFO: Quantity deducted: 1  
[2026-06-26 12:56:08] production.INFO: New stock: 37  
[2026-06-26 12:56:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782471368651"} 
[2026-06-26 12:59:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782471553963","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"103.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-22T14:46:19.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 12:59:14] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-26 12:59:14] production.INFO: Old stock: 103.00  
[2026-06-26 12:59:14] production.INFO: Quantity deducted: 1  
[2026-06-26 12:59:14] production.INFO: New stock: 102  
[2026-06-26 12:59:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782471553963"} 
[2026-06-26 13:08:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782472136513","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"89.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-25T16:28:41.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 13:08:56] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-26 13:08:56] production.INFO: Old stock: 89.00  
[2026-06-26 13:08:56] production.INFO: Quantity deducted: 1  
[2026-06-26 13:08:56] production.INFO: New stock: 88  
[2026-06-26 13:08:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782472136513"} 
[2026-06-26 13:22:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782472963224","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"78.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-16T09:05:47.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 13:22:43] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-26 13:22:43] production.INFO: Old stock: 78.00  
[2026-06-26 13:22:43] production.INFO: Quantity deducted: 1  
[2026-06-26 13:22:43] production.INFO: New stock: 77  
[2026-06-26 13:22:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782472963224"} 
[2026-06-26 13:36:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782473767014","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":532,"product_id":532,"name":"Lysoflam Tab","sku":"3169","price":"4000.00","selling_price":"4000.00","purchase_price":"1800.00","quantity":1,"subtotal":4000,"product":{"id":532,"name":"Lysoflam Tab","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"20","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"20.00","stock":"20.00","product_type":"Single","tax":null,"sku":"3169","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-25T06:57:52.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-26 13:36:07] production.INFO: Stock deduction for product: Lysoflam Tab  
[2026-06-26 13:36:07] production.INFO: Old stock: 20.00  
[2026-06-26 13:36:07] production.INFO: Quantity deducted: 1  
[2026-06-26 13:36:07] production.INFO: New stock: 19  
[2026-06-26 13:36:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782473767014"} 
[2026-06-26 13:59:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782475147852","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"28.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-22T16:11:49.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 13:59:07] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-26 13:59:07] production.INFO: Old stock: 28.00  
[2026-06-26 13:59:07] production.INFO: Quantity deducted: 1  
[2026-06-26 13:59:07] production.INFO: New stock: 27  
[2026-06-26 13:59:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782475147852"} 
[2026-06-26 14:16:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782476161624","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":3,"subtotal":3000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-06-18T17:20:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 14:16:01] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-06-26 14:16:01] production.INFO: Old stock: 11.00  
[2026-06-26 14:16:01] production.INFO: Quantity deducted: 3  
[2026-06-26 14:16:01] production.INFO: New stock: 8  
[2026-06-26 14:16:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782476161624"} 
[2026-06-26 14:20:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782476404272","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":407,"product_id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","sku":"3044","price":"3000.00","selling_price":"3000.00","purchase_price":"1100.00","quantity":1,"subtotal":3000,"product":{"id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3044","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T10:15:10.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 14:20:04] production.INFO: Stock deduction for product: Gentamcycin Eye/Ear Drop 5ml  
[2026-06-26 14:20:04] production.INFO: Old stock: 10.00  
[2026-06-26 14:20:04] production.INFO: Quantity deducted: 1  
[2026-06-26 14:20:04] production.INFO: New stock: 9  
[2026-06-26 14:20:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782476404272"} 
[2026-06-26 15:14:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782479668138","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"26.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T13:28:47.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 15:14:27] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-26 15:14:27] production.INFO: Old stock: 26.00  
[2026-06-26 15:14:27] production.INFO: Quantity deducted: 1  
[2026-06-26 15:14:27] production.INFO: New stock: 25  
[2026-06-26 15:14:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782479668138"} 
[2026-06-26 15:15:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782479711769","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"9.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-24T15:07:59.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"116.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-25T18:21:23.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":2,"subtotal":5000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-23T19:03:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 15:15:10] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-26 15:15:10] production.INFO: Old stock: 9.00  
[2026-06-26 15:15:10] production.INFO: Quantity deducted: 1  
[2026-06-26 15:15:10] production.INFO: New stock: 8  
[2026-06-26 15:15:10] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-26 15:15:10] production.INFO: Old stock: 116.00  
[2026-06-26 15:15:10] production.INFO: Quantity deducted: 1  
[2026-06-26 15:15:10] production.INFO: New stock: 115  
[2026-06-26 15:15:10] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-26 15:15:10] production.INFO: Old stock: 7.00  
[2026-06-26 15:15:10] production.INFO: Quantity deducted: 2  
[2026-06-26 15:15:10] production.INFO: New stock: 5  
[2026-06-26 15:15:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782479711769"} 
[2026-06-26 15:15:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782479728497","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":474,"product_id":474,"name":"KAMAGRA ORAL JELLY 50mg","sku":"3111","price":"5000.00","selling_price":"5000.00","purchase_price":"2600.00","quantity":4,"subtotal":20000,"product":{"id":474,"name":"KAMAGRA ORAL JELLY 50mg","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3111","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-25T18:17:48.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 15:15:27] production.INFO: Stock deduction for product: KAMAGRA ORAL JELLY 50mg  
[2026-06-26 15:15:27] production.INFO: Old stock: 5.00  
[2026-06-26 15:15:27] production.INFO: Quantity deducted: 4  
[2026-06-26 15:15:27] production.INFO: New stock: 1  
[2026-06-26 15:15:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782479728497"} 
[2026-06-26 15:32:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782480742270","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"88.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-26T11:08:56.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 15:32:23] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-26 15:32:23] production.INFO: Old stock: 88.00  
[2026-06-26 15:32:23] production.INFO: Quantity deducted: 1  
[2026-06-26 15:32:23] production.INFO: New stock: 87  
[2026-06-26 15:32:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782480742270"} 
[2026-06-26 15:40:56] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782481256196","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":1,"subtotal":2000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-06-01T15:31:26.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"63.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-25T09:06:50.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":659,"product_id":659,"name":"PROPRANOLOL 40MG","sku":"3296","price":"1000.00","selling_price":"1000.00","purchase_price":"409.00","quantity":1,"subtotal":1000,"product":{"id":659,"name":"PROPRANOLOL 40MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"409.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"81.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3296","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-15T16:11:54.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 15:40:56] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-06-26 15:40:56] production.INFO: Old stock: 7.00  
[2026-06-26 15:40:56] production.INFO: Quantity deducted: 1  
[2026-06-26 15:40:56] production.INFO: New stock: 6  
[2026-06-26 15:40:56] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-06-26 15:40:56] production.INFO: Old stock: 63.00  
[2026-06-26 15:40:56] production.INFO: Quantity deducted: 1  
[2026-06-26 15:40:56] production.INFO: New stock: 62  
[2026-06-26 15:40:56] production.INFO: Stock deduction for product: PROPRANOLOL 40MG  
[2026-06-26 15:40:56] production.INFO: Old stock: 81.00  
[2026-06-26 15:40:56] production.INFO: Quantity deducted: 1  
[2026-06-26 15:40:56] production.INFO: New stock: 80  
[2026-06-26 15:40:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782481256196"} 
[2026-06-26 15:47:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782481644538","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":2,"subtotal":4000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"56.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-25T15:49:13.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 15:47:26] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-26 15:47:26] production.INFO: Old stock: 56.00  
[2026-06-26 15:47:26] production.INFO: Quantity deducted: 2  
[2026-06-26 15:47:26] production.INFO: New stock: 54  
[2026-06-26 15:47:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782481644538"} 
[2026-06-26 16:38:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782484719072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":526,"product_id":526,"name":"LORFACT-D SYRUP","sku":"3163","price":"5500.00","selling_price":"5500.00","purchase_price":"2700.00","quantity":1,"subtotal":5500,"product":{"id":526,"name":"LORFACT-D SYRUP","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"12","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3163","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-25T09:57:30.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 16:38:40] production.INFO: Stock deduction for product: LORFACT-D SYRUP  
[2026-06-26 16:38:40] production.INFO: Old stock: 11.00  
[2026-06-26 16:38:40] production.INFO: Quantity deducted: 1  
[2026-06-26 16:38:40] production.INFO: New stock: 10  
[2026-06-26 16:38:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782484719072"} 
[2026-06-26 16:51:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782485481340","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"305.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T18:30:08.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":250},{"method":"cash","amount":50}]}} 
[2026-06-26 16:51:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782485467157","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"305.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T18:30:08.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":250},{"method":"cash","amount":50}]}} 
[2026-06-26 17:03:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782486200130","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":645,"product_id":645,"name":"POVIDONE IODINE TOPICAP 10%","sku":"3282","price":"7500.00","selling_price":"7500.00","purchase_price":"4200.00","quantity":1,"subtotal":7500,"product":{"id":645,"name":"POVIDONE IODINE TOPICAP 10%","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3282","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-06T01:12:14.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":662,"product_id":662,"name":"QUADRAJEL, 15g","sku":"3299","price":"7000.00","selling_price":"7000.00","purchase_price":"2950.00","quantity":1,"subtotal":7000,"product":{"id":662,"name":"QUADRAJEL, 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"23.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3299","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T16:27:20.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 17:03:21] production.INFO: Stock deduction for product: POVIDONE IODINE TOPICAP 10%  
[2026-06-26 17:03:21] production.INFO: Old stock: 4.00  
[2026-06-26 17:03:21] production.INFO: Quantity deducted: 1  
[2026-06-26 17:03:21] production.INFO: New stock: 3  
[2026-06-26 17:03:21] production.INFO: Stock deduction for product: QUADRAJEL, 15g  
[2026-06-26 17:03:21] production.INFO: Old stock: 23.00  
[2026-06-26 17:03:21] production.INFO: Quantity deducted: 1  
[2026-06-26 17:03:21] production.INFO: New stock: 22  
[2026-06-26 17:03:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782486200130"} 
[2026-06-26 17:17:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782487067383","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":2,"subtotal":4000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"24.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-25T15:05:21.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 17:17:48] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-06-26 17:17:48] production.INFO: Old stock: 24.00  
[2026-06-26 17:17:48] production.INFO: Quantity deducted: 2  
[2026-06-26 17:17:48] production.INFO: New stock: 22  
[2026-06-26 17:17:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782487067383"} 
[2026-06-26 17:24:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782487473398","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"206.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T18:20:29.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 17:24:34] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-26 17:24:34] production.INFO: Old stock: 206.00  
[2026-06-26 17:24:34] production.INFO: Quantity deducted: 2  
[2026-06-26 17:24:34] production.INFO: New stock: 204  
[2026-06-26 17:24:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782487473398"} 
[2026-06-26 17:49:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782488989160","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":679,"product_id":679,"name":"Sanitary Pad (Paree)","sku":"3316","price":"3000.00","selling_price":"3000.00","purchase_price":"1300.00","quantity":2,"subtotal":6000,"product":{"id":679,"name":"Sanitary Pad (Paree)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1300.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3316","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-04-27T09:29:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"9.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T10:08:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 17:49:50] production.INFO: Stock deduction for product: Sanitary Pad (Paree)  
[2026-06-26 17:49:50] production.INFO: Old stock: 18.00  
[2026-06-26 17:49:50] production.INFO: Quantity deducted: 2  
[2026-06-26 17:49:50] production.INFO: New stock: 16  
[2026-06-26 17:49:50] production.INFO: Stock deduction for product: Softcare Pad  
[2026-06-26 17:49:50] production.INFO: Old stock: 9.00  
[2026-06-26 17:49:50] production.INFO: Quantity deducted: 1  
[2026-06-26 17:49:50] production.INFO: New stock: 8  
[2026-06-26 17:49:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782488989160"} 
[2026-06-26 17:51:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782489068631","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":365,"product_id":365,"name":"Esomeprazole (Esoben)","sku":"3002","price":"5000.00","selling_price":"5000.00","purchase_price":"1000.00","quantity":3,"subtotal":15000,"product":{"id":365,"name":"Esomeprazole (Esoben)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3002","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 17:51:09] production.INFO: Stock deduction for product: Esomeprazole (Esoben)  
[2026-06-26 17:51:09] production.INFO: Old stock: 15.00  
[2026-06-26 17:51:09] production.INFO: Quantity deducted: 3  
[2026-06-26 17:51:09] production.INFO: New stock: 12  
[2026-06-26 17:51:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782489068631"} 
[2026-06-26 17:53:30] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1782489209183","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-24T14:08:08.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-06-17T14:24:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"66.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T09:06:16.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":60,"product_id":60,"name":"Amlodipine 10mg(Amlodawa)","sku":"1321","price":"2000.00","selling_price":"2000.00","purchase_price":"685.00","quantity":1,"subtotal":2000,"product":{"id":60,"name":"Amlodipine 10mg(Amlodawa)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"685.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1321","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-05-28T07:57:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"77.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-26T13:16:10.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"305.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T14:52:59.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 17:53:30] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-26 17:53:30] production.INFO: Old stock: 13.00  
[2026-06-26 17:53:30] production.INFO: Quantity deducted: 2  
[2026-06-26 17:53:30] production.INFO: New stock: 11  
[2026-06-26 17:53:30] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-06-26 17:53:30] production.INFO: Old stock: 14.00  
[2026-06-26 17:53:30] production.INFO: Quantity deducted: 1  
[2026-06-26 17:53:30] production.INFO: New stock: 13  
[2026-06-26 17:53:30] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-26 17:53:30] production.INFO: Old stock: 66.00  
[2026-06-26 17:53:30] production.INFO: Quantity deducted: 1  
[2026-06-26 17:53:30] production.INFO: New stock: 65  
[2026-06-26 17:53:30] production.INFO: Stock deduction for product: Amlodipine 10mg(Amlodawa)  
[2026-06-26 17:53:30] production.INFO: Old stock: 21.00  
[2026-06-26 17:53:30] production.INFO: Quantity deducted: 1  
[2026-06-26 17:53:30] production.INFO: New stock: 20  
[2026-06-26 17:53:30] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-26 17:53:30] production.INFO: Old stock: 77.00  
[2026-06-26 17:53:30] production.INFO: Quantity deducted: 1  
[2026-06-26 17:53:30] production.INFO: New stock: 76  
[2026-06-26 17:53:30] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-26 17:53:30] production.INFO: Old stock: 305.00  
[2026-06-26 17:53:30] production.INFO: Quantity deducted: 2  
[2026-06-26 17:53:30] production.INFO: New stock: 303  
[2026-06-26 17:53:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782489209183"} 
[2026-06-26 18:14:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782490454603","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Amoxicillin Syrup (Moxileb)","sku":"1327","price":"5000.00","selling_price":"5000.00","purchase_price":"2450.00","quantity":1,"subtotal":5000,"product":{"id":68,"name":"Amoxicillin Syrup (Moxileb)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1327","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-24T11:57:38.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 18:14:16] production.INFO: Stock deduction for product: Amoxicillin Syrup (Moxileb)  
[2026-06-26 18:14:16] production.INFO: Old stock: 1.00  
[2026-06-26 18:14:16] production.INFO: Quantity deducted: 1  
[2026-06-26 18:14:16] production.INFO: New stock: 0  
[2026-06-26 18:14:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782490454603"} 
[2026-06-26 18:22:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782490952374","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":590,"product_id":590,"name":"Norethestorone","sku":"3227","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":590,"name":"Norethestorone","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"30.00","stock":"30.00","product_type":"Single","tax":null,"sku":"3227","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-28T09:00:35.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-26 18:22:32] production.INFO: Stock deduction for product: Norethestorone  
[2026-06-26 18:22:32] production.INFO: Old stock: 30.00  
[2026-06-26 18:22:32] production.INFO: Quantity deducted: 1  
[2026-06-26 18:22:32] production.INFO: New stock: 29  
[2026-06-26 18:22:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782490952374"} 
[2026-06-26 18:22:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782490967279","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-21T14:03:17.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 18:22:48] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-26 18:22:48] production.INFO: Old stock: 11.00  
[2026-06-26 18:22:48] production.INFO: Quantity deducted: 1  
[2026-06-26 18:22:48] production.INFO: New stock: 10  
[2026-06-26 18:22:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782490967279"} 
[2026-06-26 19:06:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782493572788","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":882,"product_id":882,"name":"Ambcet","sku":"PRD-00882","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":882,"name":"Ambcet","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00882","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-20","created_at":"2026-05-20T05:16:10.000000Z","updated_at":"2026-06-22T10:12:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-26 19:06:16] production.INFO: Stock deduction for product: Ambcet  
[2026-06-26 19:06:16] production.INFO: Old stock: 7.00  
[2026-06-26 19:06:16] production.INFO: Quantity deducted: 1  
[2026-06-26 19:06:16] production.INFO: New stock: 6  
[2026-06-26 19:06:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782493572788"} 
[2026-06-26 19:07:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782493635452","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-25T16:08:20.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 19:07:15] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-26 19:07:15] production.INFO: Old stock: 17.00  
[2026-06-26 19:07:15] production.INFO: Quantity deducted: 1  
[2026-06-26 19:07:15] production.INFO: New stock: 16  
[2026-06-26 19:07:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782493635452"} 
[2026-06-26 19:35:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782495324585","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"22.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T08:06:06.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 19:35:24] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-26 19:35:24] production.INFO: Old stock: 22.00  
[2026-06-26 19:35:24] production.INFO: Quantity deducted: 1  
[2026-06-26 19:35:24] production.INFO: New stock: 21  
[2026-06-26 19:35:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782495324585"} 
[2026-06-26 19:55:27] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782496525533","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":2,"subtotal":3000,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"62.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T13:40:56.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":465,"product_id":465,"name":"IBUT-400 (Ibuprofen 400mg)","sku":"3102","price":"1000.00","selling_price":"1000.00","purchase_price":"525.00","quantity":1,"subtotal":1000,"product":{"id":465,"name":"IBUT-400 (Ibuprofen 400mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"525.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"1.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3102","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-11T14:05:49.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-26 19:55:27] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-06-26 19:55:27] production.INFO: Old stock: 62.00  
[2026-06-26 19:55:27] production.INFO: Quantity deducted: 2  
[2026-06-26 19:55:27] production.INFO: New stock: 60  
[2026-06-26 19:55:27] production.INFO: Stock deduction for product: IBUT-400 (Ibuprofen 400mg)  
[2026-06-26 19:55:27] production.INFO: Old stock: 1.00  
[2026-06-26 19:55:27] production.INFO: Quantity deducted: 1  
[2026-06-26 19:55:27] production.INFO: New stock: 0  
[2026-06-26 19:55:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782496525533"} 
[2026-06-26 20:13:50] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Prednisolone Solution","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"3000.00","selling_price":"6000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:13:51] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Prednisolone Solution","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","selling_price":"6000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:13:51] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Prednisolone Solution","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","selling_price":"6000.00","sku":"PRD-00917","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3000.00","last_purchase_date":"2026-06-26 20:13:51"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:13:51] production.INFO: Product Store - Product Created {"product_id":917,"product_name":"Prednisolone Solution","product_sku":"PRD-00917"} 
[2026-06-26 20:16:58] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Timolol Eye Drops","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"3250.00","selling_price":"7000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:16:58] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Timolol Eye Drops","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"7000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:16:58] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Timolol Eye Drops","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"7000.00","sku":"PRD-00918","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3250.00","last_purchase_date":"2026-06-26 20:16:58"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:16:58] production.INFO: Product Store - Product Created {"product_id":918,"product_name":"Timolol Eye Drops","product_sku":"PRD-00918"} 
[2026-06-26 20:18:51] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Eusol 100 ml","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4500.00","selling_price":"9000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:18:51] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Eusol 100 ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4500.00","selling_price":"9000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:18:51] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Eusol 100 ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4500.00","selling_price":"9000.00","sku":"PRD-00919","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"4500.00","last_purchase_date":"2026-06-26 20:18:51"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:18:51] production.INFO: Product Store - Product Created {"product_id":919,"product_name":"Eusol 100 ml","product_sku":"PRD-00919"} 
[2026-06-26 20:19:52] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Dexamethasone Eye Drops","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1150.00","selling_price":"2500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:19:52] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Dexamethasone Eye Drops","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1150.00","selling_price":"2500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:19:52] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Dexamethasone Eye Drops","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1150.00","selling_price":"2500.00","sku":"PRD-00920","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1150.00","last_purchase_date":"2026-06-26 20:19:52"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:19:52] production.INFO: Product Store - Product Created {"product_id":920,"product_name":"Dexamethasone Eye Drops","product_sku":"PRD-00920"} 
[2026-06-26 20:21:02] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Dazole Mouth Paint 15m,l","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1500.00","selling_price":"3000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:21:02] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Dazole Mouth Paint 15m,l","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:21:02] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Dazole Mouth Paint 15m,l","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":"PRD-00921","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1500.00","last_purchase_date":"2026-06-26 20:21:02"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:21:02] production.INFO: Product Store - Product Created {"product_id":921,"product_name":"Dazole Mouth Paint 15m,l","product_sku":"PRD-00921"} 
[2026-06-26 20:21:31] production.INFO: Stock Adjustment - Initial State {"product_id":"364","previous_quantity":"0.00","previous_selling_price":"50000.00","validated_data":{"product_id":"364","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-26"}} 
[2026-06-26 20:21:31] production.INFO: Stock Adjustment - After Quantity Save {"product_id":364,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-06-26 20:34:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782498893214","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"3.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-24T13:07:34.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-26 20:34:53] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-26 20:34:53] production.INFO: Old stock: 3.00  
[2026-06-26 20:34:53] production.INFO: Quantity deducted: 1  
[2026-06-26 20:34:53] production.INFO: New stock: 2  
[2026-06-26 20:34:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782498893214"} 
[2026-06-26 20:37:08] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Gabapentin capsule (Ablept)","sku":null,"category_id":"7","brand_id":"8","unit_id":"65","purchase_price":"6000.00","selling_price":"12000.00","description":null,"purchase_quantity":"9.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:37:08] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Gabapentin capsule (Ablept)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6000.00","selling_price":"12000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"9.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:37:08] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Gabapentin capsule (Ablept)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6000.00","selling_price":"12000.00","sku":"PRD-00922","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"9.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"9.00","last_purchase_price":"6000.00","last_purchase_date":"2026-06-26 20:37:08"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:37:08] production.INFO: Product Store - Product Created {"product_id":922,"product_name":"Gabapentin capsule (Ablept)","product_sku":"PRD-00922"} 
[2026-06-26 20:39:55] production.INFO: Product Store - Request Data {"all_data":{"_token":"wGfYMtZ3GQw6ldF7lj7LEhXFqDj7DiIWKGMo1NXz","name":"Nebilong(Nebivollol Hydrochloride)","sku":null,"category_id":"7","brand_id":"8","unit_id":"65","purchase_price":"10000.00","selling_price":"20000.00","description":null,"purchase_quantity":"6.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-26 20:39:55] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Nebilong(Nebivollol Hydrochloride)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"10000.00","selling_price":"20000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-26 20:39:55] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Nebilong(Nebivollol Hydrochloride)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"10000.00","selling_price":"20000.00","sku":"PRD-00923","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"6.00","last_purchase_price":"10000.00","last_purchase_date":"2026-06-26 20:39:55"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-26 20:39:55] production.INFO: Product Store - Product Created {"product_id":923,"product_name":"Nebilong(Nebivollol Hydrochloride)","product_sku":"PRD-00923"} 
[2026-06-26 20:47:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782499666507","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":917,"product_id":917,"name":"Prednisolone Solution","sku":"PRD-00917","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":917,"name":"Prednisolone Solution","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00917","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-26","created_at":"2026-06-26T18:13:51.000000Z","updated_at":"2026-06-26T18:13:51.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-26 20:47:48] production.INFO: Stock deduction for product: Prednisolone Solution  
[2026-06-26 20:47:48] production.INFO: Old stock: 10.00  
[2026-06-26 20:47:48] production.INFO: Quantity deducted: 1  
[2026-06-26 20:47:48] production.INFO: New stock: 9  
[2026-06-26 20:47:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782499666507"} 
[2026-06-27 07:17:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782537427496","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"27.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-26T11:59:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 07:17:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782537423168","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"27.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-26T11:59:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 07:17:08] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-27 07:17:08] production.INFO: Old stock: 27.00  
[2026-06-27 07:17:08] production.INFO: Quantity deducted: 1  
[2026-06-27 07:17:08] production.INFO: New stock: 26  
[2026-06-27 07:17:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782537427496"} 
[2026-06-27 07:17:08] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-27 07:17:08] production.INFO: Old stock: 26.00  
[2026-06-27 07:17:08] production.INFO: Quantity deducted: 1  
[2026-06-27 07:17:08] production.INFO: New stock: 25  
[2026-06-27 07:17:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782537423168"} 
[2026-06-27 07:48:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782539325723","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"25.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-25T06:38:43.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 07:48:47] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-27 07:48:47] production.INFO: Old stock: 25.00  
[2026-06-27 07:48:47] production.INFO: Quantity deducted: 1  
[2026-06-27 07:48:47] production.INFO: New stock: 24  
[2026-06-27 07:48:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782539325723"} 
[2026-06-27 07:49:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782539383315","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"115.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-26T13:15:10.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 07:49:43] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-27 07:49:43] production.INFO: Old stock: 115.00  
[2026-06-27 07:49:43] production.INFO: Quantity deducted: 1  
[2026-06-27 07:49:43] production.INFO: New stock: 114  
[2026-06-27 07:49:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782539383315"} 
[2026-06-27 07:50:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782539414347","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":749,"product_id":749,"name":"Vagid Pessary 100mg","sku":"3386","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":749,"name":"Vagid Pessary 100mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3386","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T14:46:43.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 07:50:14] production.INFO: Stock deduction for product: Vagid Pessary 100mg  
[2026-06-27 07:50:14] production.INFO: Old stock: 11.00  
[2026-06-27 07:50:14] production.INFO: Quantity deducted: 1  
[2026-06-27 07:50:14] production.INFO: New stock: 10  
[2026-06-27 07:50:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782539414347"} 
[2026-06-27 08:01:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782540094729","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"343.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-23T10:17:50.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 08:01:35] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-27 08:01:35] production.INFO: Old stock: 343.00  
[2026-06-27 08:01:35] production.INFO: Quantity deducted: 10  
[2026-06-27 08:01:35] production.INFO: New stock: 333  
[2026-06-27 08:01:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782540094729"} 
[2026-06-27 08:02:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782540122449","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"23.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-25T17:36:47.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 08:02:02] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-27 08:02:02] production.INFO: Old stock: 23.00  
[2026-06-27 08:02:02] production.INFO: Quantity deducted: 1  
[2026-06-27 08:02:02] production.INFO: New stock: 22  
[2026-06-27 08:02:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782540122449"} 
[2026-06-27 08:07:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782540478008","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"65.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T15:53:30.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 08:07:59] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-27 08:07:59] production.INFO: Old stock: 65.00  
[2026-06-27 08:07:59] production.INFO: Quantity deducted: 1  
[2026-06-27 08:07:59] production.INFO: New stock: 64  
[2026-06-27 08:07:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782540478008"} 
[2026-06-27 09:07:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782544023287","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"8.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T13:15:10.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"37.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T10:56:08.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":2,"subtotal":5000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-26T13:15:10.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 09:07:05] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-27 09:07:05] production.INFO: Old stock: 8.00  
[2026-06-27 09:07:05] production.INFO: Quantity deducted: 1  
[2026-06-27 09:07:05] production.INFO: New stock: 7  
[2026-06-27 09:07:05] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-27 09:07:05] production.INFO: Old stock: 37.00  
[2026-06-27 09:07:05] production.INFO: Quantity deducted: 1  
[2026-06-27 09:07:05] production.INFO: New stock: 36  
[2026-06-27 09:07:05] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-27 09:07:05] production.INFO: Old stock: 5.00  
[2026-06-27 09:07:05] production.INFO: Quantity deducted: 2  
[2026-06-27 09:07:05] production.INFO: New stock: 3  
[2026-06-27 09:07:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782544023287"} 
[2026-06-27 09:16:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782544607750","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":10,"subtotal":5000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"204.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T15:24:34.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 09:16:47] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-27 09:16:47] production.INFO: Old stock: 204.00  
[2026-06-27 09:16:47] production.INFO: Quantity deducted: 10  
[2026-06-27 09:16:47] production.INFO: New stock: 194  
[2026-06-27 09:16:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782544607750"} 
[2026-06-27 10:22:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782548564499","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"34.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-24T14:08:08.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 10:22:45] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-27 10:22:45] production.INFO: Old stock: 34.00  
[2026-06-27 10:22:45] production.INFO: Quantity deducted: 1  
[2026-06-27 10:22:45] production.INFO: New stock: 33  
[2026-06-27 10:22:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782548564499"} 
[2026-06-27 10:33:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782549188313","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"112.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-25T15:05:21.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 10:33:09] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-27 10:33:09] production.INFO: Old stock: 112.00  
[2026-06-27 10:33:09] production.INFO: Quantity deducted: 1  
[2026-06-27 10:33:09] production.INFO: New stock: 111  
[2026-06-27 10:33:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782549188313"} 
[2026-06-27 11:05:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782551137093","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"17.00","stock":"18.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-25T13:07:35.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 11:05:37] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-06-27 11:05:37] production.INFO: Old stock: 17.00  
[2026-06-27 11:05:37] production.INFO: Quantity deducted: 1  
[2026-06-27 11:05:37] production.INFO: New stock: 16  
[2026-06-27 11:05:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782551137093"} 
[2026-06-27 11:06:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782551165044","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"39.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-25T14:40:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 11:06:04] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-27 11:06:04] production.INFO: Old stock: 39.00  
[2026-06-27 11:06:04] production.INFO: Quantity deducted: 2  
[2026-06-27 11:06:04] production.INFO: New stock: 37  
[2026-06-27 11:06:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782551165044"} 
[2026-06-27 11:59:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782554382412","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":293,"product_id":293,"name":"ERYTHROMYCIN TABLETS","sku":"0803","price":"7000.00","selling_price":"7000.00","purchase_price":"1439.00","quantity":1,"subtotal":7000,"product":{"id":293,"name":"ERYTHROMYCIN TABLETS","business_location":"EDUC Pharmacy","unit_id":"61","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1439.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0803","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-05T07:22:38.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 11:59:43] production.INFO: Stock deduction for product: ERYTHROMYCIN TABLETS  
[2026-06-27 11:59:43] production.INFO: Old stock: 47.00  
[2026-06-27 11:59:43] production.INFO: Quantity deducted: 1  
[2026-06-27 11:59:43] production.INFO: New stock: 46  
[2026-06-27 11:59:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782554382412"} 
[2026-06-27 12:09:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782554958172","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"111.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T08:33:09.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:09:18] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-27 12:09:18] production.INFO: Old stock: 111.00  
[2026-06-27 12:09:18] production.INFO: Quantity deducted: 1  
[2026-06-27 12:09:18] production.INFO: New stock: 110  
[2026-06-27 12:09:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782554958172"} 
[2026-06-27 12:16:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782555413745","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"194.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T07:16:47.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:16:55] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-27 12:16:55] production.INFO: Old stock: 194.00  
[2026-06-27 12:16:55] production.INFO: Quantity deducted: 2  
[2026-06-27 12:16:55] production.INFO: New stock: 192  
[2026-06-27 12:16:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782555413745"} 
[2026-06-27 12:19:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782555547929","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-23T10:27:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:19:09] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-06-27 12:19:09] production.INFO: Old stock: 8.00  
[2026-06-27 12:19:09] production.INFO: Quantity deducted: 1  
[2026-06-27 12:19:09] production.INFO: New stock: 7  
[2026-06-27 12:19:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782555547929"} 
[2026-06-27 12:28:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782556114175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":106,"product_id":106,"name":"BENYLIN DAY TIME","sku":"1249","price":"19000.00","selling_price":"19000.00","purchase_price":"9450.00","quantity":1,"subtotal":19000,"product":{"id":106,"name":"BENYLIN DAY TIME","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"9450.00","last_purchase_price":null,"selling_price":"19000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1249","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-06T00:11:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:28:35] production.INFO: Stock deduction for product: BENYLIN DAY TIME  
[2026-06-27 12:28:35] production.INFO: Old stock: 2.00  
[2026-06-27 12:28:35] production.INFO: Quantity deducted: 1  
[2026-06-27 12:28:35] production.INFO: New stock: 1  
[2026-06-27 12:28:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782556114175"} 
[2026-06-27 12:30:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782556237111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"22.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-17T16:33:34.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:30:37] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-27 12:30:37] production.INFO: Old stock: 22.00  
[2026-06-27 12:30:37] production.INFO: Quantity deducted: 1  
[2026-06-27 12:30:37] production.INFO: New stock: 21  
[2026-06-27 12:30:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782556237111"} 
[2026-06-27 12:32:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782556357247","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"28.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T10:09:40.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:32:38] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-27 12:32:38] production.INFO: Old stock: 28.00  
[2026-06-27 12:32:38] production.INFO: Quantity deducted: 1  
[2026-06-27 12:32:38] production.INFO: New stock: 27  
[2026-06-27 12:32:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782556357247"} 
[2026-06-27 12:33:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782556381983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"333.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T06:01:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:33:01] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-27 12:33:01] production.INFO: Old stock: 333.00  
[2026-06-27 12:33:01] production.INFO: Quantity deducted: 1  
[2026-06-27 12:33:01] production.INFO: New stock: 332  
[2026-06-27 12:33:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782556381983"} 
[2026-06-27 12:33:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782556431318","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"303.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T15:53:30.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 12:33:51] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-27 12:33:51] production.INFO: Old stock: 303.00  
[2026-06-27 12:33:51] production.INFO: Quantity deducted: 1  
[2026-06-27 12:33:51] production.INFO: New stock: 302  
[2026-06-27 12:33:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782556431318"} 
[2026-06-27 13:25:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782559520599","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"80.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-25T15:05:21.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 13:25:20] production.INFO: Stock deduction for product: HEDAX  
[2026-06-27 13:25:20] production.INFO: Old stock: 80.00  
[2026-06-27 13:25:20] production.INFO: Quantity deducted: 5  
[2026-06-27 13:25:20] production.INFO: New stock: 75  
[2026-06-27 13:25:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782559520599"} 
[2026-06-27 13:41:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782560498764","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"27.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T10:32:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 13:41:38] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-27 13:41:38] production.INFO: Old stock: 27.00  
[2026-06-27 13:41:38] production.INFO: Quantity deducted: 1  
[2026-06-27 13:41:38] production.INFO: New stock: 26  
[2026-06-27 13:41:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782560498764"} 
[2026-06-27 14:07:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782562022489","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":794,"product_id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","sku":"0752","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"32.00","product_type":"Single","tax":null,"sku":"0752","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-20T14:44:48.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"302.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T10:33:51.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-27 14:07:03] production.INFO: Stock deduction for product: COMIT-100 (Oral Jelly, Sildenafil 100mg)  
[2026-06-27 14:07:03] production.INFO: Old stock: 26.00  
[2026-06-27 14:07:03] production.INFO: Quantity deducted: 1  
[2026-06-27 14:07:03] production.INFO: New stock: 25  
[2026-06-27 14:07:03] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-27 14:07:03] production.INFO: Old stock: 302.00  
[2026-06-27 14:07:03] production.INFO: Quantity deducted: 2  
[2026-06-27 14:07:03] production.INFO: New stock: 300  
[2026-06-27 14:07:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782562022489"} 
[2026-06-27 14:08:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782562115176","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":557,"product_id":557,"name":"METHYLATED SPIRIT 50ML","sku":"3194","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":557,"name":"METHYLATED SPIRIT 50ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"16.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3194","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-13T16:20:23.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 14:08:34] production.INFO: Stock deduction for product: METHYLATED SPIRIT 50ML  
[2026-06-27 14:08:34] production.INFO: Old stock: 16.00  
[2026-06-27 14:08:34] production.INFO: Quantity deducted: 1  
[2026-06-27 14:08:34] production.INFO: New stock: 15  
[2026-06-27 14:08:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782562115176"} 
[2026-06-27 14:16:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782562602759","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","sku":"0774","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0774","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-24T16:24:15.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 14:16:43] production.INFO: Stock deduction for product: DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)  
[2026-06-27 14:16:43] production.INFO: Old stock: 10.00  
[2026-06-27 14:16:43] production.INFO: Quantity deducted: 1  
[2026-06-27 14:16:43] production.INFO: New stock: 9  
[2026-06-27 14:16:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782562602759"} 
[2026-06-27 14:41:01] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782564061563","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"124.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-23T11:21:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-23T15:27:17.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 14:41:01] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-27 14:41:01] production.INFO: Old stock: 124.00  
[2026-06-27 14:41:01] production.INFO: Quantity deducted: 1  
[2026-06-27 14:41:01] production.INFO: New stock: 123  
[2026-06-27 14:41:01] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-06-27 14:41:01] production.INFO: Old stock: 8.00  
[2026-06-27 14:41:01] production.INFO: Quantity deducted: 1  
[2026-06-27 14:41:01] production.INFO: New stock: 7  
[2026-06-27 14:41:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782564061563"} 
[2026-06-27 15:45:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782567925513","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"123.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T12:41:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 15:45:25] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-27 15:45:25] production.INFO: Old stock: 123.00  
[2026-06-27 15:45:25] production.INFO: Quantity deducted: 1  
[2026-06-27 15:45:25] production.INFO: New stock: 122  
[2026-06-27 15:45:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782567925513"} 
[2026-06-27 16:22:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782570151011","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-26T17:07:15.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 16:22:30] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-27 16:22:30] production.INFO: Old stock: 16.00  
[2026-06-27 16:22:30] production.INFO: Quantity deducted: 1  
[2026-06-27 16:22:30] production.INFO: New stock: 15  
[2026-06-27 16:22:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782570151011"} 
[2026-06-27 16:30:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782570635882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"26.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T11:41:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 16:30:35] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-27 16:30:35] production.INFO: Old stock: 26.00  
[2026-06-27 16:30:35] production.INFO: Quantity deducted: 1  
[2026-06-27 16:30:35] production.INFO: New stock: 25  
[2026-06-27 16:30:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782570635882"} 
[2026-06-27 17:06:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782572799292","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":215,"product_id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","sku":"0742","price":"4000.00","selling_price":"4000.00","purchase_price":"1980.00","quantity":1,"subtotal":4000,"product":{"id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"19","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1980.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0742","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-02T09:32:25.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 17:06:40] production.INFO: Stock deduction for product: DAWACLOCX (Cloxacillin Oral 125mg/5ml)  
[2026-06-27 17:06:40] production.INFO: Old stock: 4.00  
[2026-06-27 17:06:40] production.INFO: Quantity deducted: 1  
[2026-06-27 17:06:40] production.INFO: New stock: 3  
[2026-06-27 17:06:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782572799292"} 
[2026-06-27 17:28:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782574110169","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"37.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T09:06:04.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 17:28:31] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-27 17:28:31] production.INFO: Old stock: 37.00  
[2026-06-27 17:28:31] production.INFO: Quantity deducted: 1  
[2026-06-27 17:28:31] production.INFO: New stock: 36  
[2026-06-27 17:28:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782574110169"} 
[2026-06-27 17:40:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782574808927","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-26T13:47:26.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 17:40:09] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-27 17:40:09] production.INFO: Old stock: 54.00  
[2026-06-27 17:40:09] production.INFO: Quantity deducted: 1  
[2026-06-27 17:40:09] production.INFO: New stock: 53  
[2026-06-27 17:40:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782574808927"} 
[2026-06-27 17:52:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782575531549","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"179.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T10:07:46.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 17:52:12] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-27 17:52:12] production.INFO: Old stock: 179.00  
[2026-06-27 17:52:12] production.INFO: Quantity deducted: 2  
[2026-06-27 17:52:12] production.INFO: New stock: 177  
[2026-06-27 17:52:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782575531549"} 
[2026-06-27 18:07:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782576456075","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":621,"product_id":621,"name":"PAMAGIN C SYRUP, 60ml","sku":"3258","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":621,"name":"PAMAGIN C SYRUP, 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"20","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"19.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3258","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-25T06:57:02.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":144,"product_id":144,"name":"CACHMONT-LC SYRUP, 60ml","sku":"0714","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":144,"name":"CACHMONT-LC SYRUP, 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0714","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-24T15:01:42.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-27 18:07:35] production.INFO: Stock deduction for product: PAMAGIN C SYRUP, 60ml  
[2026-06-27 18:07:35] production.INFO: Old stock: 19.00  
[2026-06-27 18:07:35] production.INFO: Quantity deducted: 1  
[2026-06-27 18:07:35] production.INFO: New stock: 18  
[2026-06-27 18:07:35] production.INFO: Stock deduction for product: CACHMONT-LC SYRUP, 60ml  
[2026-06-27 18:07:35] production.INFO: Old stock: 10.00  
[2026-06-27 18:07:35] production.INFO: Quantity deducted: 1  
[2026-06-27 18:07:35] production.INFO: New stock: 9  
[2026-06-27 18:07:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782576456075"} 
[2026-06-27 18:14:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782576851626","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"76.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-26T15:53:30.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 18:14:11] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-06-27 18:14:11] production.INFO: Old stock: 76.00  
[2026-06-27 18:14:11] production.INFO: Quantity deducted: 1  
[2026-06-27 18:14:11] production.INFO: New stock: 75  
[2026-06-27 18:14:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782576851626"} 
[2026-06-27 18:30:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782577812351","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":5,"subtotal":5000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-26T15:53:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":61,"product_id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","sku":"0674","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":5,"subtotal":7500,"product":{"id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"35.00","product_type":"Single","tax":null,"sku":"0674","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-20T10:06:43.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":55,"product_id":55,"name":"Amidol (Cold and Flu) Tablets","sku":"0669","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":2,"subtotal":3000,"product":{"id":55,"name":"Amidol (Cold and Flu) Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":null,"supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0669","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-24T14:09:43.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 18:30:12] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-27 18:30:12] production.INFO: Old stock: 11.00  
[2026-06-27 18:30:12] production.INFO: Quantity deducted: 5  
[2026-06-27 18:30:12] production.INFO: New stock: 6  
[2026-06-27 18:30:12] production.INFO: Stock deduction for product: AMLODIPINE 5MG (AMLODAWA) 10s  
[2026-06-27 18:30:12] production.INFO: Old stock: 28.00  
[2026-06-27 18:30:12] production.INFO: Quantity deducted: 5  
[2026-06-27 18:30:12] production.INFO: New stock: 23  
[2026-06-27 18:30:12] production.INFO: Stock deduction for product: Amidol (Cold and Flu) Tablets  
[2026-06-27 18:30:12] production.INFO: Old stock: 23.00  
[2026-06-27 18:30:12] production.INFO: Quantity deducted: 2  
[2026-06-27 18:30:12] production.INFO: New stock: 21  
[2026-06-27 18:30:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782577812351"} 
[2026-06-27 18:31:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782577901855","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"64.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T06:07:59.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 18:31:41] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-27 18:31:41] production.INFO: Old stock: 64.00  
[2026-06-27 18:31:41] production.INFO: Quantity deducted: 1  
[2026-06-27 18:31:41] production.INFO: New stock: 63  
[2026-06-27 18:31:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782577901855"} 
[2026-06-27 18:36:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782578209854","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":514,"product_id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","sku":"3151","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":2,"subtotal":1000,"product":{"id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3151","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-21T11:21:00.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 18:36:49] production.INFO: Stock deduction for product: LOFNAC (DICLOFENAC 50MG) TABLETS  
[2026-06-27 18:36:49] production.INFO: Old stock: 11.00  
[2026-06-27 18:36:49] production.INFO: Quantity deducted: 2  
[2026-06-27 18:36:49] production.INFO: New stock: 9  
[2026-06-27 18:36:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782578209854"} 
[2026-06-27 18:57:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782579430211","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-21T14:10:56.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":389,"product_id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","sku":"3026","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3026","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T14:06:49.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-27 18:57:10] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-06-27 18:57:10] production.INFO: Old stock: 45.00  
[2026-06-27 18:57:10] production.INFO: Quantity deducted: 1  
[2026-06-27 18:57:10] production.INFO: New stock: 44  
[2026-06-27 18:57:10] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 30g  
[2026-06-27 18:57:10] production.INFO: Old stock: 9.00  
[2026-06-27 18:57:10] production.INFO: Quantity deducted: 1  
[2026-06-27 18:57:10] production.INFO: New stock: 8  
[2026-06-27 18:57:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782579430211"} 
[2026-06-27 18:58:04] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782579485339","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"15.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-25T13:28:08.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":3,"subtotal":2400,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"108.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T14:45:35.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 18:58:04] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-27 18:58:04] production.INFO: Old stock: 15.00  
[2026-06-27 18:58:04] production.INFO: Quantity deducted: 1  
[2026-06-27 18:58:04] production.INFO: New stock: 14  
[2026-06-27 18:58:04] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-06-27 18:58:04] production.INFO: Old stock: 108.00  
[2026-06-27 18:58:04] production.INFO: Quantity deducted: 3  
[2026-06-27 18:58:04] production.INFO: New stock: 105  
[2026-06-27 18:58:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782579485339"} 
[2026-06-27 18:59:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782579594322","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"36.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-27T07:07:05.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 18:59:54] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-27 18:59:54] production.INFO: Old stock: 36.00  
[2026-06-27 18:59:54] production.INFO: Quantity deducted: 1  
[2026-06-27 18:59:54] production.INFO: New stock: 35  
[2026-06-27 18:59:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782579594322"} 
[2026-06-27 19:07:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782580029658","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":760,"product_id":760,"name":"VOLTEM TABLET","sku":"3397","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":760,"name":"VOLTEM TABLET","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"24.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3397","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T14:27:29.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 19:07:09] production.INFO: Stock deduction for product: VOLTEM TABLET  
[2026-06-27 19:07:09] production.INFO: Old stock: 24.00  
[2026-06-27 19:07:09] production.INFO: Quantity deducted: 1  
[2026-06-27 19:07:09] production.INFO: New stock: 23  
[2026-06-27 19:07:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782580029658"} 
[2026-06-27 19:13:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782580389465","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":379,"product_id":379,"name":"FOLIC ACID 5MG (FOLIBEN)","sku":"3016","price":"600.00","selling_price":"600.00","purchase_price":"350.00","quantity":1,"subtotal":600,"product":{"id":379,"name":"FOLIC ACID 5MG (FOLIBEN)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"350.00","last_purchase_price":null,"selling_price":"600.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3016","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-13T07:51:11.000000Z","brand":null,"category":null}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"87.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-26T13:32:23.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 19:13:10] production.INFO: Stock deduction for product: FOLIC ACID 5MG (FOLIBEN)  
[2026-06-27 19:13:10] production.INFO: Old stock: 95.00  
[2026-06-27 19:13:10] production.INFO: Quantity deducted: 1  
[2026-06-27 19:13:10] production.INFO: New stock: 94  
[2026-06-27 19:13:10] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-27 19:13:10] production.INFO: Old stock: 87.00  
[2026-06-27 19:13:10] production.INFO: Quantity deducted: 1  
[2026-06-27 19:13:10] production.INFO: New stock: 86  
[2026-06-27 19:13:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782580389465"} 
[2026-06-27 19:18:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782580733112","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"21.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T10:30:37.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"mpamba"}} 
[2026-06-27 19:18:52] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-27 19:18:52] production.INFO: Old stock: 21.00  
[2026-06-27 19:18:52] production.INFO: Quantity deducted: 1  
[2026-06-27 19:18:52] production.INFO: New stock: 20  
[2026-06-27 19:18:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782580733112"} 
[2026-06-27 19:19:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782580766560","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"21.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T17:19:07.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 19:19:25] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-27 19:19:25] production.INFO: Old stock: 21.00  
[2026-06-27 19:19:25] production.INFO: Quantity deducted: 1  
[2026-06-27 19:19:25] production.INFO: New stock: 20  
[2026-06-27 19:19:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782580766560"} 
[2026-06-27 19:23:35] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782581014951","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":696,"product_id":696,"name":"SINURRHON SYRUP","sku":"3333","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":696,"name":"SINURRHON SYRUP","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3333","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-14T11:47:19.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"332.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T10:33:01.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"300.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T12:07:03.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 19:23:35] production.INFO: Stock deduction for product: SINURRHON SYRUP  
[2026-06-27 19:23:35] production.INFO: Old stock: 3.00  
[2026-06-27 19:23:35] production.INFO: Quantity deducted: 1  
[2026-06-27 19:23:35] production.INFO: New stock: 2  
[2026-06-27 19:23:35] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-27 19:23:35] production.INFO: Old stock: 332.00  
[2026-06-27 19:23:35] production.INFO: Quantity deducted: 1  
[2026-06-27 19:23:35] production.INFO: New stock: 331  
[2026-06-27 19:23:35] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-27 19:23:35] production.INFO: Old stock: 300.00  
[2026-06-27 19:23:35] production.INFO: Quantity deducted: 1  
[2026-06-27 19:23:35] production.INFO: New stock: 299  
[2026-06-27 19:23:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782581014951"} 
[2026-06-27 19:57:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782583033946","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":735,"product_id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","sku":"3372","price":"17000.00","selling_price":"17000.00","purchase_price":"8000.00","quantity":1,"subtotal":17000,"product":{"id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"6","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"17000.00","current_stock":"8.01","stock":"8.01","product_type":"Single","tax":null,"sku":"3372","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T12:15:08.000000Z","brand":{"id":6,"name":"100ML","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 19:57:14] production.INFO: Stock deduction for product: TRIPHEN PAEDIATRIC, 100ml  
[2026-06-27 19:57:14] production.INFO: Old stock: 8.01  
[2026-06-27 19:57:14] production.INFO: Quantity deducted: 1  
[2026-06-27 19:57:14] production.INFO: New stock: 7.01  
[2026-06-27 19:57:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782583033946"} 
[2026-06-27 20:06:27] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782583586968","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":407,"product_id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","sku":"3044","price":"3000.00","selling_price":"3000.00","purchase_price":"1100.00","quantity":1,"subtotal":3000,"product":{"id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3044","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T12:20:04.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"114.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-27T05:49:43.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"25.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-26T13:14:27.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 20:06:27] production.INFO: Stock deduction for product: Gentamcycin Eye/Ear Drop 5ml  
[2026-06-27 20:06:27] production.INFO: Old stock: 9.00  
[2026-06-27 20:06:27] production.INFO: Quantity deducted: 1  
[2026-06-27 20:06:27] production.INFO: New stock: 8  
[2026-06-27 20:06:27] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-27 20:06:27] production.INFO: Old stock: 114.00  
[2026-06-27 20:06:27] production.INFO: Quantity deducted: 1  
[2026-06-27 20:06:27] production.INFO: New stock: 113  
[2026-06-27 20:06:27] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-27 20:06:27] production.INFO: Old stock: 25.00  
[2026-06-27 20:06:27] production.INFO: Quantity deducted: 1  
[2026-06-27 20:06:27] production.INFO: New stock: 24  
[2026-06-27 20:06:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782583586968"} 
[2026-06-27 20:17:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782584255263","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"192.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T10:16:55.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 20:17:35] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-27 20:17:35] production.INFO: Old stock: 192.00  
[2026-06-27 20:17:35] production.INFO: Quantity deducted: 2  
[2026-06-27 20:17:35] production.INFO: New stock: 190  
[2026-06-27 20:17:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782584255263"} 
[2026-06-27 20:24:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782584688318","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":2,"subtotal":3000,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"24.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-27T05:48:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-27 20:24:49] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-27 20:24:49] production.INFO: Old stock: 24.00  
[2026-06-27 20:24:49] production.INFO: Quantity deducted: 2  
[2026-06-27 20:24:49] production.INFO: New stock: 22  
[2026-06-27 20:24:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782584688318"} 
[2026-06-27 20:43:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782585799995","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":71,"product_id":71,"name":"Antagit DS Gel 100ml","sku":"1184","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":71,"name":"Antagit DS Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1184","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-14T10:49:53.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":861,"product_id":861,"name":"Phloro-G","sku":"PRD-00861","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":1,"subtotal":20000,"product":{"id":861,"name":"Phloro-G","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"10000.00","last_purchase_price":"10000.00","selling_price":"20000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00861","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T09:47:37.000000Z","updated_at":"2026-04-21T09:47:37.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-06-26T15:53:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-27 20:43:19] production.INFO: Stock deduction for product: Antagit DS Gel 100ml  
[2026-06-27 20:43:19] production.INFO: Old stock: 14.00  
[2026-06-27 20:43:19] production.INFO: Quantity deducted: 1  
[2026-06-27 20:43:19] production.INFO: New stock: 13  
[2026-06-27 20:43:19] production.INFO: Stock deduction for product: Phloro-G  
[2026-06-27 20:43:19] production.INFO: Old stock: 3.00  
[2026-06-27 20:43:19] production.INFO: Quantity deducted: 1  
[2026-06-27 20:43:19] production.INFO: New stock: 2  
[2026-06-27 20:43:19] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-06-27 20:43:19] production.INFO: Old stock: 13.00  
[2026-06-27 20:43:19] production.INFO: Quantity deducted: 1  
[2026-06-27 20:43:19] production.INFO: New stock: 12  
[2026-06-27 20:43:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782585799995"} 
[2026-06-27 20:54:41] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782586480737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"14.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T16:58:04.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":2,"subtotal":5000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-27T07:07:05.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-27T15:40:09.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-27 20:54:41] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-27 20:54:41] production.INFO: Old stock: 14.00  
[2026-06-27 20:54:41] production.INFO: Quantity deducted: 2  
[2026-06-27 20:54:41] production.INFO: New stock: 12  
[2026-06-27 20:54:41] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-06-27 20:54:41] production.INFO: Old stock: 3.00  
[2026-06-27 20:54:41] production.INFO: Quantity deducted: 2  
[2026-06-27 20:54:41] production.INFO: New stock: 1  
[2026-06-27 20:54:41] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-27 20:54:41] production.INFO: Old stock: 53.00  
[2026-06-27 20:54:41] production.INFO: Quantity deducted: 1  
[2026-06-27 20:54:41] production.INFO: New stock: 52  
[2026-06-27 20:54:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782586480737"} 
[2026-06-28 08:59:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782629962176","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":907,"product_id":907,"name":"Amoxicillin Syrup (Crocillin)","sku":"PRD-00907","price":"5500.00","selling_price":"5500.00","purchase_price":"2600.00","quantity":2,"subtotal":11000,"product":{"id":907,"name":"Amoxicillin Syrup (Crocillin)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2600.00","last_purchase_price":"2600.00","selling_price":"5500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00907","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-10","created_at":"2026-06-10T10:34:01.000000Z","updated_at":"2026-06-10T10:34:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-26T16:22:48.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-28 08:59:21] production.INFO: Stock deduction for product: Amoxicillin Syrup (Crocillin)  
[2026-06-28 08:59:21] production.INFO: Old stock: 10.00  
[2026-06-28 08:59:21] production.INFO: Quantity deducted: 2  
[2026-06-28 08:59:21] production.INFO: New stock: 8  
[2026-06-28 08:59:21] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-28 08:59:21] production.INFO: Old stock: 10.00  
[2026-06-28 08:59:21] production.INFO: Quantity deducted: 1  
[2026-06-28 08:59:21] production.INFO: New stock: 9  
[2026-06-28 08:59:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782629962176"} 
[2026-06-28 09:16:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782630979036","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":4,"subtotal":10000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"21.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-22T13:31:57.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 09:16:18] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-28 09:16:18] production.INFO: Old stock: 21.00  
[2026-06-28 09:16:18] production.INFO: Quantity deducted: 4  
[2026-06-28 09:16:18] production.INFO: New stock: 17  
[2026-06-28 09:16:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782630979036"} 
[2026-06-28 09:56:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782633385869","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-16T17:26:40.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 09:56:25] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-28 09:56:25] production.INFO: Old stock: 15.00  
[2026-06-28 09:56:25] production.INFO: Quantity deducted: 1  
[2026-06-28 09:56:25] production.INFO: New stock: 14  
[2026-06-28 09:56:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782633385869"} 
[2026-06-28 10:06:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782633980442","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T07:56:25.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 10:06:20] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-06-28 10:06:20] production.INFO: Old stock: 14.00  
[2026-06-28 10:06:20] production.INFO: Quantity deducted: 1  
[2026-06-28 10:06:20] production.INFO: New stock: 13  
[2026-06-28 10:06:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782633980442"} 
[2026-06-28 10:12:22] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782634344184","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"113.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-27T18:06:27.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"33.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-27T08:22:45.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 10:12:22] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-28 10:12:22] production.INFO: Old stock: 113.00  
[2026-06-28 10:12:22] production.INFO: Quantity deducted: 1  
[2026-06-28 10:12:22] production.INFO: New stock: 112  
[2026-06-28 10:12:22] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-28 10:12:22] production.INFO: Old stock: 33.00  
[2026-06-28 10:12:22] production.INFO: Quantity deducted: 1  
[2026-06-28 10:12:22] production.INFO: New stock: 32  
[2026-06-28 10:12:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782634344184"} 
[2026-06-28 10:27:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782635247885","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"2.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-25T11:59:33.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 10:27:27] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-28 10:27:27] production.INFO: Old stock: 2.00  
[2026-06-28 10:27:27] production.INFO: Quantity deducted: 1  
[2026-06-28 10:27:27] production.INFO: New stock: 1  
[2026-06-28 10:27:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782635247885"} 
[2026-06-28 10:29:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782635376676","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":395,"product_id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","sku":"3032","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":395,"name":"G-DERM (The Multi-Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"1.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3032","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T08:27:27.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 10:29:36] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 15g  
[2026-06-28 10:29:36] production.INFO: Old stock: 1.00  
[2026-06-28 10:29:36] production.INFO: Quantity deducted: 1  
[2026-06-28 10:29:36] production.INFO: New stock: 0  
[2026-06-28 10:29:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782635376676"} 
[2026-06-28 10:31:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782635519579","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"9.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-18T15:15:28.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 10:31:59] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-28 10:31:59] production.INFO: Old stock: 9.00  
[2026-06-28 10:31:59] production.INFO: Quantity deducted: 1  
[2026-06-28 10:31:59] production.INFO: New stock: 8  
[2026-06-28 10:31:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782635519579"} 
[2026-06-28 10:32:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782635570531","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"63.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T16:31:41.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 10:32:48] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-28 10:32:48] production.INFO: Old stock: 63.00  
[2026-06-28 10:32:48] production.INFO: Quantity deducted: 1  
[2026-06-28 10:32:48] production.INFO: New stock: 62  
[2026-06-28 10:32:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782635570531"} 
[2026-06-28 10:37:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782635880586","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":461,"product_id":461,"name":"IBUPAR TABLETS (Ibuprofen 400mg + Paracetamol 325mg)","sku":"3098","price":"3500.00","selling_price":"3500.00","purchase_price":"2000.00","quantity":1,"subtotal":3500,"product":{"id":461,"name":"IBUPAR TABLETS (Ibuprofen 400mg + Paracetamol 325mg)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"17","brand_id":"10","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3098","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-04-04T04:19:28.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-28 10:37:59] production.INFO: Stock deduction for product: IBUPAR TABLETS (Ibuprofen 400mg + Paracetamol 325mg)  
[2026-06-28 10:37:59] production.INFO: Old stock: 3.00  
[2026-06-28 10:37:59] production.INFO: Quantity deducted: 1  
[2026-06-28 10:37:59] production.INFO: New stock: 2  
[2026-06-28 10:37:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782635880586"} 
[2026-06-28 11:01:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782637314148","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"25.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T14:30:35.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-28 11:01:53] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-28 11:01:53] production.INFO: Old stock: 25.00  
[2026-06-28 11:01:53] production.INFO: Quantity deducted: 1  
[2026-06-28 11:01:53] production.INFO: New stock: 24  
[2026-06-28 11:01:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782637314148"} 
[2026-06-28 11:10:23] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782637824306","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"4.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-06-25T15:40:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11000.00","selling_price":"11000.00","purchase_price":"3500.00","quantity":1,"subtotal":11000,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"5.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-23T18:57:10.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-28 11:10:23] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-06-28 11:10:23] production.INFO: Old stock: 4.00  
[2026-06-28 11:10:23] production.INFO: Quantity deducted: 1  
[2026-06-28 11:10:23] production.INFO: New stock: 3  
[2026-06-28 11:10:23] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-06-28 11:10:23] production.INFO: Old stock: 5.00  
[2026-06-28 11:10:23] production.INFO: Quantity deducted: 1  
[2026-06-28 11:10:23] production.INFO: New stock: 4  
[2026-06-28 11:10:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782637824306"} 
[2026-06-28 11:20:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782638433936","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":659,"product_id":659,"name":"PROPRANOLOL 40MG","sku":"3296","price":"1000.00","selling_price":"1000.00","purchase_price":"409.00","quantity":1,"subtotal":1000,"product":{"id":659,"name":"PROPRANOLOL 40MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"409.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"80.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3296","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T13:40:56.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 11:20:33] production.INFO: Stock deduction for product: PROPRANOLOL 40MG  
[2026-06-28 11:20:33] production.INFO: Old stock: 80.00  
[2026-06-28 11:20:33] production.INFO: Quantity deducted: 1  
[2026-06-28 11:20:33] production.INFO: New stock: 79  
[2026-06-28 11:20:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782638433936"} 
[2026-06-28 11:41:17] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1782639677530","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"2.00","stock":"7.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-26T18:34:53.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"9.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T06:59:21.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"32.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-28T08:12:22.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"62.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T08:32:48.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"43.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-24T15:45:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"24.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-27T18:06:27.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-28 11:41:17] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-06-28 11:41:17] production.INFO: Old stock: 2.00  
[2026-06-28 11:41:17] production.INFO: Quantity deducted: 1  
[2026-06-28 11:41:17] production.INFO: New stock: 1  
[2026-06-28 11:41:17] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-06-28 11:41:17] production.INFO: Old stock: 9.00  
[2026-06-28 11:41:17] production.INFO: Quantity deducted: 1  
[2026-06-28 11:41:17] production.INFO: New stock: 8  
[2026-06-28 11:41:17] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-28 11:41:17] production.INFO: Old stock: 32.00  
[2026-06-28 11:41:17] production.INFO: Quantity deducted: 1  
[2026-06-28 11:41:17] production.INFO: New stock: 31  
[2026-06-28 11:41:17] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-28 11:41:17] production.INFO: Old stock: 62.00  
[2026-06-28 11:41:17] production.INFO: Quantity deducted: 1  
[2026-06-28 11:41:17] production.INFO: New stock: 61  
[2026-06-28 11:41:17] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-28 11:41:17] production.INFO: Old stock: 43.00  
[2026-06-28 11:41:17] production.INFO: Quantity deducted: 1  
[2026-06-28 11:41:17] production.INFO: New stock: 42  
[2026-06-28 11:41:17] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-28 11:41:17] production.INFO: Old stock: 24.00  
[2026-06-28 11:41:17] production.INFO: Quantity deducted: 1  
[2026-06-28 11:41:17] production.INFO: New stock: 23  
[2026-06-28 11:41:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782639677530"} 
[2026-06-28 13:17:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782645469122","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"122.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T13:45:25.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-28 13:17:47] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-28 13:17:47] production.INFO: Old stock: 122.00  
[2026-06-28 13:17:47] production.INFO: Quantity deducted: 1  
[2026-06-28 13:17:47] production.INFO: New stock: 121  
[2026-06-28 13:17:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782645469122"} 
[2026-06-28 13:21:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782645694145","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"121.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T11:17:47.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-28 13:21:32] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-28 13:21:32] production.INFO: Old stock: 121.00  
[2026-06-28 13:21:32] production.INFO: Quantity deducted: 1  
[2026-06-28 13:21:32] production.INFO: New stock: 120  
[2026-06-28 13:21:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782645694145"} 
[2026-06-28 13:30:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782646205343","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"26.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-27T05:17:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 13:30:04] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-28 13:30:04] production.INFO: Old stock: 26.00  
[2026-06-28 13:30:04] production.INFO: Quantity deducted: 1  
[2026-06-28 13:30:04] production.INFO: New stock: 25  
[2026-06-28 13:30:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782646205343"} 
[2026-06-28 13:43:44] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1782647025012","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"8.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-25T12:48:27.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"21.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T17:35:24.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"331.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T17:23:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"299.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T17:23:35.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"35.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-27T16:59:54.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 13:43:44] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-06-28 13:43:44] production.INFO: Old stock: 8.00  
[2026-06-28 13:43:44] production.INFO: Quantity deducted: 1  
[2026-06-28 13:43:44] production.INFO: New stock: 7  
[2026-06-28 13:43:44] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-06-28 13:43:44] production.INFO: Old stock: 21.00  
[2026-06-28 13:43:44] production.INFO: Quantity deducted: 1  
[2026-06-28 13:43:44] production.INFO: New stock: 20  
[2026-06-28 13:43:44] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-28 13:43:44] production.INFO: Old stock: 331.00  
[2026-06-28 13:43:44] production.INFO: Quantity deducted: 2  
[2026-06-28 13:43:44] production.INFO: New stock: 329  
[2026-06-28 13:43:44] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-28 13:43:44] production.INFO: Old stock: 299.00  
[2026-06-28 13:43:44] production.INFO: Quantity deducted: 2  
[2026-06-28 13:43:44] production.INFO: New stock: 297  
[2026-06-28 13:43:44] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-06-28 13:43:44] production.INFO: Old stock: 35.00  
[2026-06-28 13:43:44] production.INFO: Quantity deducted: 1  
[2026-06-28 13:43:44] production.INFO: New stock: 34  
[2026-06-28 13:43:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782647025012"} 
[2026-06-28 13:53:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782647607345","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":849,"product_id":849,"name":"Nifedipine 20mg Sustained Release","sku":"PRD-00849","price":"1500.00","selling_price":"1500.00","purchase_price":"500.00","quantity":1,"subtotal":1500,"product":{"id":849,"name":"Nifedipine 20mg Sustained Release","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1500.00","current_stock":"18.00","stock":"30.00","product_type":"Single","tax":null,"sku":"PRD-00849","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-05","last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:43:40.000000Z","updated_at":"2026-06-20T08:22:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 13:53:26] production.INFO: Stock deduction for product: Nifedipine 20mg Sustained Release  
[2026-06-28 13:53:26] production.INFO: Old stock: 18.00  
[2026-06-28 13:53:26] production.INFO: Quantity deducted: 1  
[2026-06-28 13:53:26] production.INFO: New stock: 17  
[2026-06-28 13:53:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782647607345"} 
[2026-06-28 14:03:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782648181318","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":754,"product_id":754,"name":"Vifex Syrup","sku":"3391","price":"10000.00","selling_price":"10000.00","purchase_price":"4850.00","quantity":1,"subtotal":10000,"product":{"id":754,"name":"Vifex Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4850.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3391","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T13:11:07.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-28 14:03:00] production.INFO: Stock deduction for product: Vifex Syrup  
[2026-06-28 14:03:00] production.INFO: Old stock: 6.00  
[2026-06-28 14:03:00] production.INFO: Quantity deducted: 1  
[2026-06-28 14:03:00] production.INFO: New stock: 5  
[2026-06-28 14:03:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782648181318"} 
[2026-06-28 15:06:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782652010095","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":387,"product_id":387,"name":"FUNBACT SOAP YELLOW (MOISTURISING) 75GM","sku":"3024","price":"5000.00","selling_price":"5000.00","purchase_price":"2231.00","quantity":2,"subtotal":10000,"product":{"id":387,"name":"FUNBACT SOAP YELLOW (MOISTURISING) 75GM","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2231.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"23.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3024","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-05T10:07:45.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":689,"product_id":689,"name":"Shaver","sku":"3326","price":"1000.00","selling_price":"1000.00","purchase_price":"416.00","quantity":1,"subtotal":1000,"product":{"id":689,"name":"Shaver","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"416.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3326","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-07T18:38:05.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 15:06:49] production.INFO: Stock deduction for product: FUNBACT SOAP YELLOW (MOISTURISING) 75GM  
[2026-06-28 15:06:49] production.INFO: Old stock: 23.00  
[2026-06-28 15:06:49] production.INFO: Quantity deducted: 2  
[2026-06-28 15:06:49] production.INFO: New stock: 21  
[2026-06-28 15:06:50] production.INFO: Stock deduction for product: Shaver  
[2026-06-28 15:06:50] production.INFO: Old stock: 5.00  
[2026-06-28 15:06:50] production.INFO: Quantity deducted: 1  
[2026-06-28 15:06:50] production.INFO: New stock: 4  
[2026-06-28 15:06:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782652010095"} 
[2026-06-28 15:41:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782654068758","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"BROXOL Junior (Syrup), 100ml","sku":"0713","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":140,"name":"BROXOL Junior (Syrup), 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0713","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-18T14:50:09.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 15:41:06] production.INFO: Stock deduction for product: BROXOL Junior (Syrup), 100ml  
[2026-06-28 15:41:06] production.INFO: Old stock: 11.00  
[2026-06-28 15:41:06] production.INFO: Quantity deducted: 1  
[2026-06-28 15:41:06] production.INFO: New stock: 10  
[2026-06-28 15:41:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782654068758"} 
[2026-06-28 16:08:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782655702518","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":532,"product_id":532,"name":"Lysoflam Tab","sku":"3169","price":"4000.00","selling_price":"4000.00","purchase_price":"1800.00","quantity":1,"subtotal":4000,"product":{"id":532,"name":"Lysoflam Tab","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"20","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"20.00","product_type":"Single","tax":null,"sku":"3169","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-26T11:36:07.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"177.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T15:52:12.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 16:08:25] production.INFO: Stock deduction for product: Lysoflam Tab  
[2026-06-28 16:08:25] production.INFO: Old stock: 19.00  
[2026-06-28 16:08:25] production.INFO: Quantity deducted: 1  
[2026-06-28 16:08:25] production.INFO: New stock: 18  
[2026-06-28 16:08:25] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-28 16:08:25] production.INFO: Old stock: 177.00  
[2026-06-28 16:08:25] production.INFO: Quantity deducted: 1  
[2026-06-28 16:08:25] production.INFO: New stock: 176  
[2026-06-28 16:08:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782655702518"} 
[2026-06-28 16:56:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782658605034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":561,"product_id":561,"name":"MICLOCIN CREAM (Miconazole, Clobetasol, Gentamicin), 15g","sku":"3198","price":"5500.00","selling_price":"5500.00","purchase_price":"2250.00","quantity":1,"subtotal":5500,"product":{"id":561,"name":"MICLOCIN CREAM (Miconazole, Clobetasol, Gentamicin), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"10","supplier_id":null,"purchase_price":"2250.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3198","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-29T03:57:33.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 16:56:45] production.INFO: Stock deduction for product: MICLOCIN CREAM (Miconazole, Clobetasol, Gentamicin), 15g  
[2026-06-28 16:56:45] production.INFO: Old stock: 6.00  
[2026-06-28 16:56:45] production.INFO: Quantity deducted: 1  
[2026-06-28 16:56:45] production.INFO: New stock: 5  
[2026-06-28 16:56:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782658605034"} 
[2026-06-28 16:57:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782658666625","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"20.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T17:19:25.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 16:57:46] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-28 16:57:46] production.INFO: Old stock: 20.00  
[2026-06-28 16:57:46] production.INFO: Quantity deducted: 1  
[2026-06-28 16:57:46] production.INFO: New stock: 19  
[2026-06-28 16:57:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782658666625"} 
[2026-06-28 17:02:59] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782658978328","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"297.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T11:43:44.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"329.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T11:43:44.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 17:02:59] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-28 17:02:59] production.INFO: Old stock: 297.00  
[2026-06-28 17:02:59] production.INFO: Quantity deducted: 1  
[2026-06-28 17:02:59] production.INFO: New stock: 296  
[2026-06-28 17:02:59] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-28 17:02:59] production.INFO: Old stock: 329.00  
[2026-06-28 17:02:59] production.INFO: Quantity deducted: 1  
[2026-06-28 17:02:59] production.INFO: New stock: 328  
[2026-06-28 17:02:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782658978328"} 
[2026-06-28 17:03:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782659028000","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"176.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T14:08:25.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 17:03:48] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-28 17:03:48] production.INFO: Old stock: 176.00  
[2026-06-28 17:03:48] production.INFO: Quantity deducted: 1  
[2026-06-28 17:03:48] production.INFO: New stock: 175  
[2026-06-28 17:03:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782659028000"} 
[2026-06-28 17:29:33] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782660572257","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"15.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-25T09:27:52.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"296.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T15:02:59.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"328.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T15:02:59.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 17:29:34] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-06-28 17:29:34] production.INFO: Old stock: 15.00  
[2026-06-28 17:29:34] production.INFO: Quantity deducted: 1  
[2026-06-28 17:29:34] production.INFO: New stock: 14  
[2026-06-28 17:29:34] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-28 17:29:34] production.INFO: Old stock: 296.00  
[2026-06-28 17:29:34] production.INFO: Quantity deducted: 2  
[2026-06-28 17:29:34] production.INFO: New stock: 294  
[2026-06-28 17:29:34] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-28 17:29:34] production.INFO: Old stock: 328.00  
[2026-06-28 17:29:34] production.INFO: Quantity deducted: 2  
[2026-06-28 17:29:34] production.INFO: New stock: 326  
[2026-06-28 17:29:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782660572257"} 
[2026-06-28 17:33:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782660807264","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"24.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T09:01:53.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 17:33:29] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-28 17:33:29] production.INFO: Old stock: 24.00  
[2026-06-28 17:33:29] production.INFO: Quantity deducted: 1  
[2026-06-28 17:33:29] production.INFO: New stock: 23  
[2026-06-28 17:33:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782660807264"} 
[2026-06-28 17:50:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782661808940","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"294.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T15:29:34.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"326.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T15:29:34.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"23.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T15:33:29.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 17:50:09] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-28 17:50:09] production.INFO: Old stock: 294.00  
[2026-06-28 17:50:09] production.INFO: Quantity deducted: 1  
[2026-06-28 17:50:09] production.INFO: New stock: 293  
[2026-06-28 17:50:09] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-28 17:50:09] production.INFO: Old stock: 326.00  
[2026-06-28 17:50:09] production.INFO: Quantity deducted: 1  
[2026-06-28 17:50:09] production.INFO: New stock: 325  
[2026-06-28 17:50:09] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-28 17:50:09] production.INFO: Old stock: 23.00  
[2026-06-28 17:50:09] production.INFO: Quantity deducted: 1  
[2026-06-28 17:50:09] production.INFO: New stock: 22  
[2026-06-28 17:50:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782661808940"} 
[2026-06-28 18:00:24] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782662423402","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"BROXOL Junior (Syrup), 100ml","sku":"0713","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":140,"name":"BROXOL Junior (Syrup), 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0713","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-28T13:41:06.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"38.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-19T14:51:16.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 18:00:24] production.INFO: Stock deduction for product: BROXOL Junior (Syrup), 100ml  
[2026-06-28 18:00:24] production.INFO: Old stock: 10.00  
[2026-06-28 18:00:24] production.INFO: Quantity deducted: 1  
[2026-06-28 18:00:24] production.INFO: New stock: 9  
[2026-06-28 18:00:24] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-28 18:00:24] production.INFO: Old stock: 38.00  
[2026-06-28 18:00:24] production.INFO: Quantity deducted: 1  
[2026-06-28 18:00:24] production.INFO: New stock: 37  
[2026-06-28 18:00:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782662423402"} 
[2026-06-28 18:04:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782662670865","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":696,"product_id":696,"name":"SINURRHON SYRUP","sku":"3333","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":696,"name":"SINURRHON SYRUP","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3333","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T17:23:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 18:04:31] production.INFO: Stock deduction for product: SINURRHON SYRUP  
[2026-06-28 18:04:31] production.INFO: Old stock: 2.00  
[2026-06-28 18:04:31] production.INFO: Quantity deducted: 1  
[2026-06-28 18:04:31] production.INFO: New stock: 1  
[2026-06-28 18:04:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782662670865"} 
[2026-06-28 18:14:15] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782663255054","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":109,"product_id":109,"name":"Benylin with Codeine","sku":"1335","price":"50000.00","selling_price":"50000.00","purchase_price":"27000.00","quantity":1,"subtotal":50000,"product":{"id":109,"name":"Benylin with Codeine","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"27000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"1.00","stock":"6.00","product_type":"Single","tax":null,"sku":"1335","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-25T15:49:13.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"102.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T10:59:14.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-28 18:14:15] production.INFO: Stock deduction for product: Benylin with Codeine  
[2026-06-28 18:14:15] production.INFO: Old stock: 1.00  
[2026-06-28 18:14:15] production.INFO: Quantity deducted: 1  
[2026-06-28 18:14:15] production.INFO: New stock: 0  
[2026-06-28 18:14:15] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-28 18:14:15] production.INFO: Old stock: 102.00  
[2026-06-28 18:14:15] production.INFO: Quantity deducted: 1  
[2026-06-28 18:14:15] production.INFO: New stock: 101  
[2026-06-28 18:14:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782663255054"} 
[2026-06-28 18:16:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782663397973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"52.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-27T18:54:41.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"22.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T15:50:09.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 18:16:39] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-28 18:16:39] production.INFO: Old stock: 52.00  
[2026-06-28 18:16:39] production.INFO: Quantity deducted: 1  
[2026-06-28 18:16:39] production.INFO: New stock: 51  
[2026-06-28 18:16:39] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-28 18:16:39] production.INFO: Old stock: 22.00  
[2026-06-28 18:16:39] production.INFO: Quantity deducted: 1  
[2026-06-28 18:16:39] production.INFO: New stock: 21  
[2026-06-28 18:16:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782663397973"} 
[2026-06-28 18:22:55] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782663774243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":56,"product_id":56,"name":"AMINOPHYLLIN 100MG TABLETS","sku":"0670","price":"1500.00","selling_price":"1500.00","purchase_price":"1139.00","quantity":2,"subtotal":3000,"product":{"id":56,"name":"AMINOPHYLLIN 100MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"28","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"1139.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0670","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-06T15:50:56.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"42.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-28T09:41:17.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"58.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-24T15:45:32.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":430,"product_id":430,"name":"Grand pa","sku":"3067","price":"1000.00","selling_price":"1000.00","purchase_price":"526.00","quantity":5,"subtotal":5000,"product":{"id":430,"name":"Grand pa","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"526.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3067","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T14:14:16.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 18:22:55] production.INFO: Stock deduction for product: AMINOPHYLLIN 100MG TABLETS  
[2026-06-28 18:22:55] production.INFO: Old stock: 3.00  
[2026-06-28 18:22:55] production.INFO: Quantity deducted: 2  
[2026-06-28 18:22:55] production.INFO: New stock: 1  
[2026-06-28 18:22:55] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-28 18:22:55] production.INFO: Old stock: 42.00  
[2026-06-28 18:22:55] production.INFO: Quantity deducted: 2  
[2026-06-28 18:22:55] production.INFO: New stock: 40  
[2026-06-28 18:22:55] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-06-28 18:22:55] production.INFO: Old stock: 58.00  
[2026-06-28 18:22:55] production.INFO: Quantity deducted: 1  
[2026-06-28 18:22:55] production.INFO: New stock: 57  
[2026-06-28 18:22:55] production.INFO: Stock deduction for product: Grand pa  
[2026-06-28 18:22:55] production.INFO: Old stock: 8.00  
[2026-06-28 18:22:55] production.INFO: Quantity deducted: 5  
[2026-06-28 18:22:55] production.INFO: New stock: 3  
[2026-06-28 18:22:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782663774243"} 
[2026-06-28 18:47:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782665276023","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"21.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T16:16:39.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-28 18:47:57] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-28 18:47:57] production.INFO: Old stock: 21.00  
[2026-06-28 18:47:57] production.INFO: Quantity deducted: 1  
[2026-06-28 18:47:57] production.INFO: New stock: 20  
[2026-06-28 18:47:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782665276023"} 
[2026-06-28 18:48:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782665293973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"175.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T15:03:48.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 18:48:14] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-06-28 18:48:14] production.INFO: Old stock: 175.00  
[2026-06-28 18:48:14] production.INFO: Quantity deducted: 2  
[2026-06-28 18:48:14] production.INFO: New stock: 173  
[2026-06-28 18:48:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782665293973"} 
[2026-06-28 19:28:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782667694183","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":2,"subtotal":7000,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"36.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-22T13:04:27.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-28 19:28:16] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-06-28 19:28:16] production.INFO: Old stock: 36.00  
[2026-06-28 19:28:16] production.INFO: Quantity deducted: 2  
[2026-06-28 19:28:16] production.INFO: New stock: 34  
[2026-06-28 19:28:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782667694183"} 
[2026-06-28 19:28:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782667729147","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":4,"subtotal":1200,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"293.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T15:50:09.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 19:28:51] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-28 19:28:51] production.INFO: Old stock: 293.00  
[2026-06-28 19:28:51] production.INFO: Quantity deducted: 4  
[2026-06-28 19:28:51] production.INFO: New stock: 289  
[2026-06-28 19:28:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782667729147"} 
[2026-06-28 20:11:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782670270023","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":749,"product_id":749,"name":"Vagid Pessary 100mg","sku":"3386","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":749,"name":"Vagid Pessary 100mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3386","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T05:50:14.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 20:11:10] production.INFO: Stock deduction for product: Vagid Pessary 100mg  
[2026-06-28 20:11:10] production.INFO: Old stock: 10.00  
[2026-06-28 20:11:10] production.INFO: Quantity deducted: 1  
[2026-06-28 20:11:10] production.INFO: New stock: 9  
[2026-06-28 20:11:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782670270023"} 
[2026-06-28 20:13:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782670413062","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T10:37:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 20:13:34] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-06-28 20:13:34] production.INFO: Old stock: 6.00  
[2026-06-28 20:13:34] production.INFO: Quantity deducted: 1  
[2026-06-28 20:13:34] production.INFO: New stock: 5  
[2026-06-28 20:13:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782670413062"} 
[2026-06-28 20:27:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782671228979","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":710,"product_id":710,"name":"Super Apeti Plus Syrp 200ml","sku":"3347","price":"14000.00","selling_price":"14000.00","purchase_price":"6900.00","quantity":1,"subtotal":14000,"product":{"id":710,"name":"Super Apeti Plus Syrp 200ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"6900.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3347","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T13:23:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}},{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":2,"subtotal":7000,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"34.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-28T17:28:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 20:27:10] production.INFO: Stock deduction for product: Super Apeti Plus Syrp 200ml  
[2026-06-28 20:27:10] production.INFO: Old stock: 11.00  
[2026-06-28 20:27:10] production.INFO: Quantity deducted: 1  
[2026-06-28 20:27:10] production.INFO: New stock: 10  
[2026-06-28 20:27:10] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-06-28 20:27:10] production.INFO: Old stock: 34.00  
[2026-06-28 20:27:10] production.INFO: Quantity deducted: 2  
[2026-06-28 20:27:10] production.INFO: New stock: 32  
[2026-06-28 20:27:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782671228979"} 
[2026-06-28 20:43:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782672211926","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"20.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T16:47:57.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-28 20:43:31] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-28 20:43:31] production.INFO: Old stock: 20.00  
[2026-06-28 20:43:31] production.INFO: Quantity deducted: 1  
[2026-06-28 20:43:31] production.INFO: New stock: 19  
[2026-06-28 20:43:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782672211926"} 
[2026-06-29 07:30:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782711011215","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":10,"subtotal":3000,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"289.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T17:28:51.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-29 07:30:11] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-29 07:30:11] production.INFO: Old stock: 289.00  
[2026-06-29 07:30:11] production.INFO: Quantity deducted: 10  
[2026-06-29 07:30:11] production.INFO: New stock: 279  
[2026-06-29 07:30:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782711011215"} 
[2026-06-29 08:24:51] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782714290868","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":2,"subtotal":3000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"101.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T16:14:15.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":117,"product_id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","sku":"0705","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0705","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-24T06:23:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":413,"product_id":413,"name":"Gigapyn","sku":"3050","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":413,"name":"Gigapyn","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"13.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3050","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-24T06:16:06.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 08:24:51] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-06-29 08:24:51] production.INFO: Old stock: 101.00  
[2026-06-29 08:24:51] production.INFO: Quantity deducted: 2  
[2026-06-29 08:24:51] production.INFO: New stock: 99  
[2026-06-29 08:24:51] production.INFO: Stock deduction for product: BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g  
[2026-06-29 08:24:51] production.INFO: Old stock: 13.00  
[2026-06-29 08:24:51] production.INFO: Quantity deducted: 1  
[2026-06-29 08:24:51] production.INFO: New stock: 12  
[2026-06-29 08:24:51] production.INFO: Stock deduction for product: Gigapyn  
[2026-06-29 08:24:51] production.INFO: Old stock: 13.00  
[2026-06-29 08:24:51] production.INFO: Quantity deducted: 1  
[2026-06-29 08:24:51] production.INFO: New stock: 12  
[2026-06-29 08:24:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782714290868"} 
[2026-06-29 08:32:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782714731979","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":29,"product_id":29,"name":"ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS","sku":"0661","price":"10000.00","selling_price":"10000.00","purchase_price":"4800.00","quantity":1,"subtotal":10000,"product":{"id":29,"name":"ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4800.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0661","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-05T10:14:26.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 08:32:12] production.INFO: Stock deduction for product: ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS  
[2026-06-29 08:32:12] production.INFO: Old stock: 12.00  
[2026-06-29 08:32:12] production.INFO: Quantity deducted: 1  
[2026-06-29 08:32:12] production.INFO: New stock: 11  
[2026-06-29 08:32:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782714731979"} 
[2026-06-29 08:38:15] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782715096506","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"19.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T18:43:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"291.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-24T14:15:27.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"279.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T05:30:11.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"325.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T15:50:09.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 08:38:15] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-29 08:38:15] production.INFO: Old stock: 19.00  
[2026-06-29 08:38:15] production.INFO: Quantity deducted: 1  
[2026-06-29 08:38:15] production.INFO: New stock: 18  
[2026-06-29 08:38:15] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-29 08:38:15] production.INFO: Old stock: 291.00  
[2026-06-29 08:38:15] production.INFO: Quantity deducted: 1  
[2026-06-29 08:38:15] production.INFO: New stock: 290  
[2026-06-29 08:38:15] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-29 08:38:15] production.INFO: Old stock: 279.00  
[2026-06-29 08:38:15] production.INFO: Quantity deducted: 2  
[2026-06-29 08:38:15] production.INFO: New stock: 277  
[2026-06-29 08:38:15] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-29 08:38:15] production.INFO: Old stock: 325.00  
[2026-06-29 08:38:15] production.INFO: Quantity deducted: 2  
[2026-06-29 08:38:15] production.INFO: New stock: 323  
[2026-06-29 08:38:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782715096506"} 
[2026-06-29 09:33:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782718399607","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":29,"product_id":29,"name":"ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS","sku":"0661","price":"10000.00","selling_price":"10000.00","purchase_price":"4800.00","quantity":1,"subtotal":10000,"product":{"id":29,"name":"ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4800.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0661","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-29T06:32:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 09:33:18] production.INFO: Stock deduction for product: ACEPAR SP (ACECLOFENAC 100MG/PARACETAMOL 500MG/SERRATIOPEPTIDASE 15MG) TABLETS  
[2026-06-29 09:33:18] production.INFO: Old stock: 11.00  
[2026-06-29 09:33:18] production.INFO: Quantity deducted: 1  
[2026-06-29 09:33:18] production.INFO: New stock: 10  
[2026-06-29 09:33:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782718399607"} 
[2026-06-29 09:37:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782718670341","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"40.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-28T16:22:55.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-29 09:37:49] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-29 09:37:49] production.INFO: Old stock: 40.00  
[2026-06-29 09:37:49] production.INFO: Quantity deducted: 2  
[2026-06-29 09:37:49] production.INFO: New stock: 38  
[2026-06-29 09:37:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782718670341"} 
[2026-06-29 09:38:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782718729094","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"40.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-29T07:38:27.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 09:38:48] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-29 09:38:48] production.INFO: Old stock: 40.00  
[2026-06-29 09:38:48] production.INFO: Quantity deducted: 2  
[2026-06-29 09:38:48] production.INFO: New stock: 38  
[2026-06-29 09:38:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782718729094"} 
[2026-06-29 10:35:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782722129979","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"51.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-28T16:16:39.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 10:35:30] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-29 10:35:30] production.INFO: Old stock: 51.00  
[2026-06-29 10:35:30] production.INFO: Quantity deducted: 1  
[2026-06-29 10:35:30] production.INFO: New stock: 50  
[2026-06-29 10:35:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782722129979"} 
[2026-06-29 11:03:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782723838717","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"25.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-28T11:30:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-29 11:03:58] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-06-29 11:03:58] production.INFO: Old stock: 25.00  
[2026-06-29 11:03:58] production.INFO: Quantity deducted: 1  
[2026-06-29 11:03:58] production.INFO: New stock: 24  
[2026-06-29 11:03:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782723838717"} 
[2026-06-29 11:09:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782724160364","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"18.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T06:38:15.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 11:09:21] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-29 11:09:21] production.INFO: Old stock: 18.00  
[2026-06-29 11:09:21] production.INFO: Quantity deducted: 1  
[2026-06-29 11:09:21] production.INFO: New stock: 17  
[2026-06-29 11:09:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782724160364"} 
[2026-06-29 11:16:20] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782724577435","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":3,"subtotal":6000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"120.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T11:21:32.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"323.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T06:38:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-29 11:16:20] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-29 11:16:20] production.INFO: Old stock: 120.00  
[2026-06-29 11:16:20] production.INFO: Quantity deducted: 3  
[2026-06-29 11:16:20] production.INFO: New stock: 117  
[2026-06-29 11:16:20] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-29 11:16:20] production.INFO: Old stock: 323.00  
[2026-06-29 11:16:20] production.INFO: Quantity deducted: 5  
[2026-06-29 11:16:20] production.INFO: New stock: 318  
[2026-06-29 11:16:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782724577435"} 
[2026-06-29 11:26:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782725174576","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":710,"product_id":710,"name":"Super Apeti Plus Syrp 200ml","sku":"3347","price":"14000.00","selling_price":"14000.00","purchase_price":"6900.00","quantity":1,"subtotal":14000,"product":{"id":710,"name":"Super Apeti Plus Syrp 200ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"6900.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3347","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T18:27:10.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}},{"id":468,"product_id":468,"name":"Iron Syrup(Chelferon)","sku":"3105","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":1,"subtotal":3000,"product":{"id":468,"name":"Iron Syrup(Chelferon)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3105","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-07T12:32:11.000000Z","brand":null,"category":null}},{"id":579,"product_id":579,"name":"NEEM POWDER 100GM","sku":"3216","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":579,"name":"NEEM POWDER 100GM","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3216","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-03-15T06:14:27.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 11:26:15] production.INFO: Stock deduction for product: Super Apeti Plus Syrp 200ml  
[2026-06-29 11:26:15] production.INFO: Old stock: 10.00  
[2026-06-29 11:26:15] production.INFO: Quantity deducted: 1  
[2026-06-29 11:26:15] production.INFO: New stock: 9  
[2026-06-29 11:26:15] production.INFO: Stock deduction for product: Iron Syrup(Chelferon)  
[2026-06-29 11:26:15] production.INFO: Old stock: 2.00  
[2026-06-29 11:26:15] production.INFO: Quantity deducted: 1  
[2026-06-29 11:26:15] production.INFO: New stock: 1  
[2026-06-29 11:26:15] production.INFO: Stock deduction for product: NEEM POWDER 100GM  
[2026-06-29 11:26:15] production.INFO: Old stock: 2.00  
[2026-06-29 11:26:15] production.INFO: Quantity deducted: 1  
[2026-06-29 11:26:15] production.INFO: New stock: 1  
[2026-06-29 11:26:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782725174576"} 
[2026-06-29 11:27:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782725277736","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":754,"product_id":754,"name":"Vifex Syrup","sku":"3391","price":"10000.00","selling_price":"10000.00","purchase_price":"4850.00","quantity":1,"subtotal":10000,"product":{"id":754,"name":"Vifex Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4850.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3391","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T12:03:00.000000Z","brand":null,"category":null}}],"payment_method":"card"}} 
[2026-06-29 11:27:58] production.INFO: Stock deduction for product: Vifex Syrup  
[2026-06-29 11:27:58] production.INFO: Old stock: 5.00  
[2026-06-29 11:27:58] production.INFO: Quantity deducted: 1  
[2026-06-29 11:27:58] production.INFO: New stock: 4  
[2026-06-29 11:27:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782725277736"} 
[2026-06-29 11:33:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782725592631","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":167,"product_id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","sku":"0729","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"48.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0729","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-26T08:54:35.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 11:33:11] production.INFO: Stock deduction for product: CETERIZINE Tablets 10MG (RINACET)  
[2026-06-29 11:33:11] production.INFO: Old stock: 48.00  
[2026-06-29 11:33:11] production.INFO: Quantity deducted: 1  
[2026-06-29 11:33:11] production.INFO: New stock: 47  
[2026-06-29 11:33:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782725592631"} 
[2026-06-29 11:46:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782726376519","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"17.00","stock":"104.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T09:09:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 11:46:15] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-29 11:46:15] production.INFO: Old stock: 17.00  
[2026-06-29 11:46:15] production.INFO: Quantity deducted: 1  
[2026-06-29 11:46:15] production.INFO: New stock: 16  
[2026-06-29 11:46:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782726376519"} 
[2026-06-29 11:46:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782726403358","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"318.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T09:16:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 11:46:42] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-29 11:46:42] production.INFO: Old stock: 318.00  
[2026-06-29 11:46:42] production.INFO: Quantity deducted: 1  
[2026-06-29 11:46:42] production.INFO: New stock: 317  
[2026-06-29 11:46:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782726403358"} 
[2026-06-29 11:47:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782726431654","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"277.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T06:38:15.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 11:47:10] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-29 11:47:10] production.INFO: Old stock: 277.00  
[2026-06-29 11:47:10] production.INFO: Quantity deducted: 1  
[2026-06-29 11:47:10] production.INFO: New stock: 276  
[2026-06-29 11:47:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782726431654"} 
[2026-06-29 12:08:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782727705609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":3,"subtotal":7500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-22T14:42:49.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":480,"product_id":480,"name":"KETOCONAZOLE SHAMPOO 100ML (KETAZOLE)","sku":"3117","price":"15000.00","selling_price":"15000.00","purchase_price":"7800.00","quantity":1,"subtotal":15000,"product":{"id":480,"name":"KETOCONAZOLE SHAMPOO 100ML (KETAZOLE)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"15","brand_id":"35","supplier_id":null,"purchase_price":"7800.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3117","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-28","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-28T08:15:44.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 12:08:25] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-06-29 12:08:25] production.INFO: Old stock: 12.00  
[2026-06-29 12:08:25] production.INFO: Quantity deducted: 3  
[2026-06-29 12:08:25] production.INFO: New stock: 9  
[2026-06-29 12:08:25] production.INFO: Stock deduction for product: KETOCONAZOLE SHAMPOO 100ML (KETAZOLE)  
[2026-06-29 12:08:25] production.INFO: Old stock: 10.00  
[2026-06-29 12:08:25] production.INFO: Quantity deducted: 1  
[2026-06-29 12:08:25] production.INFO: New stock: 9  
[2026-06-29 12:08:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782727705609"} 
[2026-06-29 12:26:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782728764237","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":218,"product_id":218,"name":"DAWAVATE (Betamethasone Cream), 15g","sku":"0704","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":2,"subtotal":7000,"product":{"id":218,"name":"DAWAVATE (Betamethasone Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0704","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-18T10:21:47.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 12:26:04] production.INFO: Stock deduction for product: DAWAVATE (Betamethasone Cream), 15g  
[2026-06-29 12:26:04] production.INFO: Old stock: 10.00  
[2026-06-29 12:26:04] production.INFO: Quantity deducted: 2  
[2026-06-29 12:26:04] production.INFO: New stock: 8  
[2026-06-29 12:26:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782728764237"} 
[2026-06-29 12:36:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782729413882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"111.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-24T14:08:08.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-29 12:36:54] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-29 12:36:54] production.INFO: Old stock: 111.00  
[2026-06-29 12:36:54] production.INFO: Quantity deducted: 1  
[2026-06-29 12:36:54] production.INFO: New stock: 110  
[2026-06-29 12:36:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782729413882"} 
[2026-06-29 12:38:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782729510361","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"57.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T16:22:55.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 12:38:30] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-06-29 12:38:30] production.INFO: Old stock: 57.00  
[2026-06-29 12:38:30] production.INFO: Quantity deducted: 1  
[2026-06-29 12:38:30] production.INFO: New stock: 56  
[2026-06-29 12:38:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782729510361"} 
[2026-06-29 14:00:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782734403574","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":8,"subtotal":3200,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"22.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T10:56:08.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 14:00:06] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-29 14:00:06] production.INFO: Old stock: 22.00  
[2026-06-29 14:00:06] production.INFO: Quantity deducted: 8  
[2026-06-29 14:00:06] production.INFO: New stock: 14  
[2026-06-29 14:00:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782734403574"} 
[2026-06-29 14:05:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782734702565","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":7,"subtotal":2800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"22.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T12:03:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 14:05:01] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-29 14:05:01] production.INFO: Old stock: 22.00  
[2026-06-29 14:05:01] production.INFO: Quantity deducted: 7  
[2026-06-29 14:05:01] production.INFO: New stock: 15  
[2026-06-29 14:05:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782734702565"} 
[2026-06-29 14:20:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782735629336","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":2,"subtotal":12000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"8.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T08:31:59.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 14:20:29] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-29 14:20:29] production.INFO: Old stock: 8.00  
[2026-06-29 14:20:29] production.INFO: Quantity deducted: 2  
[2026-06-29 14:20:29] production.INFO: New stock: 6  
[2026-06-29 14:20:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782735629336"} 
[2026-06-29 14:26:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782735968751","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"41.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-21T13:22:18.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 14:26:09] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-06-29 14:26:09] production.INFO: Old stock: 41.00  
[2026-06-29 14:26:09] production.INFO: Quantity deducted: 1  
[2026-06-29 14:26:09] production.INFO: New stock: 40  
[2026-06-29 14:26:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782735968751"} 
[2026-06-29 14:56:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782737791615","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"117.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T09:16:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 14:56:33] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-29 14:56:33] production.INFO: Old stock: 117.00  
[2026-06-29 14:56:33] production.INFO: Quantity deducted: 1  
[2026-06-29 14:56:33] production.INFO: New stock: 116  
[2026-06-29 14:56:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782737791615"} 
[2026-06-29 15:11:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782738691283","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":402,"product_id":402,"name":"Gauze Swabs(10cm)","sku":"3039","price":"18000.00","selling_price":"18000.00","purchase_price":"10000.00","quantity":1,"subtotal":18000,"product":{"id":402,"name":"Gauze Swabs(10cm)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"5.00","stock":"6.00","product_type":"Single","tax":null,"sku":"3039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-24T06:49:50.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 15:11:30] production.INFO: Stock deduction for product: Gauze Swabs(10cm)  
[2026-06-29 15:11:30] production.INFO: Old stock: 5.00  
[2026-06-29 15:11:30] production.INFO: Quantity deducted: 1  
[2026-06-29 15:11:30] production.INFO: New stock: 4  
[2026-06-29 15:11:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782738691283"} 
[2026-06-29 15:49:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782740940369","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"36.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T15:28:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 15:49:00] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-29 15:49:00] production.INFO: Old stock: 36.00  
[2026-06-29 15:49:00] production.INFO: Quantity deducted: 1  
[2026-06-29 15:49:00] production.INFO: New stock: 35  
[2026-06-29 15:49:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782740940369"} 
[2026-06-29 16:42:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782744123531","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":415,"product_id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","sku":"3052","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":2,"subtotal":10000,"product":{"id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T06:55:51.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 16:42:04] production.INFO: Stock deduction for product: Glam & Glory (Snail White Lotion) 25ml  
[2026-06-29 16:42:04] production.INFO: Old stock: 6.00  
[2026-06-29 16:42:04] production.INFO: Quantity deducted: 2  
[2026-06-29 16:42:04] production.INFO: New stock: 4  
[2026-06-29 16:42:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782744123531"} 
[2026-06-29 16:51:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782744703753","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"36.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-22T16:07:17.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"37.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-28T16:00:24.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 16:51:43] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-29 16:51:43] production.INFO: Old stock: 36.00  
[2026-06-29 16:51:43] production.INFO: Quantity deducted: 1  
[2026-06-29 16:51:43] production.INFO: New stock: 35  
[2026-06-29 16:51:43] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-29 16:51:43] production.INFO: Old stock: 37.00  
[2026-06-29 16:51:43] production.INFO: Quantity deducted: 1  
[2026-06-29 16:51:43] production.INFO: New stock: 36  
[2026-06-29 16:51:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782744703753"} 
[2026-06-29 16:53:04] production.INFO: Stock Adjustment - Initial State {"product_id":"746","previous_quantity":"16.00","previous_selling_price":"4500.00","validated_data":{"product_id":"746","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-29"}} 
[2026-06-29 16:53:04] production.INFO: Stock Adjustment - After Quantity Save {"product_id":746,"new_quantity":116.0,"current_stock":116.0,"changes_made":"Quantity adjusted"} 
[2026-06-29 16:54:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782744885496","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"116.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T14:53:04.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 16:54:44] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-29 16:54:44] production.INFO: Old stock: 116.00  
[2026-06-29 16:54:44] production.INFO: Quantity deducted: 1  
[2026-06-29 16:54:44] production.INFO: New stock: 115  
[2026-06-29 16:54:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782744885496"} 
[2026-06-29 16:55:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782744932008","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"116.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T14:55:13.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-29 16:55:30] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-29 16:55:30] production.INFO: Old stock: 116.00  
[2026-06-29 16:55:30] production.INFO: Quantity deducted: 1  
[2026-06-29 16:55:30] production.INFO: New stock: 115  
[2026-06-29 16:55:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782744932008"} 
[2026-06-29 16:55:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782744948304","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-27T16:30:12.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 16:55:47] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-06-29 16:55:47] production.INFO: Old stock: 6.00  
[2026-06-29 16:55:47] production.INFO: Quantity deducted: 1  
[2026-06-29 16:55:47] production.INFO: New stock: 5  
[2026-06-29 16:55:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782744948304"} 
[2026-06-29 17:07:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782745647797","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":479,"product_id":479,"name":"KETAZOL (Ketoconazole Cream), 15g","sku":"3116","price":"3500.00","selling_price":"3500.00","purchase_price":"1300.00","quantity":1,"subtotal":3500,"product":{"id":479,"name":"KETAZOL (Ketoconazole Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"15","brand_id":"35","supplier_id":null,"purchase_price":"1300.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"3.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3116","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T18:05:32.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:07:27] production.INFO: Stock deduction for product: KETAZOL (Ketoconazole Cream), 15g  
[2026-06-29 17:07:27] production.INFO: Old stock: 3.00  
[2026-06-29 17:07:27] production.INFO: Quantity deducted: 1  
[2026-06-29 17:07:27] production.INFO: New stock: 2  
[2026-06-29 17:07:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782745647797"} 
[2026-06-29 17:13:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782746035091","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"BROXOL Junior (Syrup), 100ml","sku":"0713","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":140,"name":"BROXOL Junior (Syrup), 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0713","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-28T16:00:24.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-29 17:13:53] production.INFO: Stock deduction for product: BROXOL Junior (Syrup), 100ml  
[2026-06-29 17:13:53] production.INFO: Old stock: 9.00  
[2026-06-29 17:13:53] production.INFO: Quantity deducted: 1  
[2026-06-29 17:13:53] production.INFO: New stock: 8  
[2026-06-29 17:13:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782746035091"} 
[2026-06-29 17:15:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782746103923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"112.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-28T08:12:22.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"61.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T09:41:17.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":70,"product_id":70,"name":"Anomex Suppositories","sku":"1231","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":70,"name":"Anomex Suppositories","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"3.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1231","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-18T10:28:51.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:15:03] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-29 17:15:03] production.INFO: Old stock: 112.00  
[2026-06-29 17:15:03] production.INFO: Quantity deducted: 1  
[2026-06-29 17:15:03] production.INFO: New stock: 111  
[2026-06-29 17:15:03] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-29 17:15:03] production.INFO: Old stock: 61.00  
[2026-06-29 17:15:03] production.INFO: Quantity deducted: 1  
[2026-06-29 17:15:03] production.INFO: New stock: 60  
[2026-06-29 17:15:03] production.INFO: Stock deduction for product: Anomex Suppositories  
[2026-06-29 17:15:03] production.INFO: Old stock: 3.00  
[2026-06-29 17:15:03] production.INFO: Quantity deducted: 1  
[2026-06-29 17:15:03] production.INFO: New stock: 2  
[2026-06-29 17:15:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782746103923"} 
[2026-06-29 17:24:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782746664993","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"60.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T15:15:03.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:24:25] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-29 17:24:25] production.INFO: Old stock: 60.00  
[2026-06-29 17:24:25] production.INFO: Quantity deducted: 1  
[2026-06-29 17:24:25] production.INFO: New stock: 59  
[2026-06-29 17:24:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782746664993"} 
[2026-06-29 17:32:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782747120375","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":3,"subtotal":1200,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"75.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T11:25:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:32:00] production.INFO: Stock deduction for product: HEDAX  
[2026-06-29 17:32:00] production.INFO: Old stock: 75.00  
[2026-06-29 17:32:00] production.INFO: Quantity deducted: 3  
[2026-06-29 17:32:00] production.INFO: New stock: 72  
[2026-06-29 17:32:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782747120375"} 
[2026-06-29 17:41:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782747709801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"10.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T14:14:16.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":5000},{"method":"airtel_money","amount":1000}]}} 
[2026-06-29 17:46:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782747970416","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"111.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-29T15:15:03.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":2,"subtotal":7000,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"7.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-26T08:54:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:46:11] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-06-29 17:46:11] production.INFO: Old stock: 111.00  
[2026-06-29 17:46:11] production.INFO: Quantity deducted: 1  
[2026-06-29 17:46:11] production.INFO: New stock: 110  
[2026-06-29 17:46:11] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-06-29 17:46:11] production.INFO: Old stock: 7.00  
[2026-06-29 17:46:11] production.INFO: Quantity deducted: 2  
[2026-06-29 17:46:11] production.INFO: New stock: 5  
[2026-06-29 17:46:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782747970416"} 
[2026-06-29 17:51:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782748269678","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"6.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T12:20:29.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"86.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-27T17:13:10.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:51:11] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-29 17:51:11] production.INFO: Old stock: 6.00  
[2026-06-29 17:51:11] production.INFO: Quantity deducted: 1  
[2026-06-29 17:51:11] production.INFO: New stock: 5  
[2026-06-29 17:51:11] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-29 17:51:11] production.INFO: Old stock: 86.00  
[2026-06-29 17:51:11] production.INFO: Quantity deducted: 1  
[2026-06-29 17:51:11] production.INFO: New stock: 85  
[2026-06-29 17:51:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782748269678"} 
[2026-06-29 17:55:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782748528261","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"317.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T09:46:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 17:55:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-29 17:55:28] production.INFO: Old stock: 317.00  
[2026-06-29 17:55:28] production.INFO: Quantity deducted: 10  
[2026-06-29 17:55:28] production.INFO: New stock: 307  
[2026-06-29 17:55:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782748528261"} 
[2026-06-29 18:07:06] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782749225266","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":665,"product_id":665,"name":"Re-Cart Capsule","sku":"3302","price":"16000.00","selling_price":"16000.00","purchase_price":"8000.00","quantity":1,"subtotal":16000,"product":{"id":665,"name":"Re-Cart Capsule","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"3302","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-25T08:39:31.000000Z","brand":null,"category":null}},{"id":758,"product_id":758,"name":"Vitamin E (Jeritone)","sku":"3395","price":"9000.00","selling_price":"9000.00","purchase_price":"4500.00","quantity":1,"subtotal":9000,"product":{"id":758,"name":"Vitamin E (Jeritone)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3395","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T17:11:45.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-29 18:07:06] production.INFO: Stock deduction for product: Re-Cart Capsule  
[2026-06-29 18:07:06] production.INFO: Old stock: 6.00  
[2026-06-29 18:07:06] production.INFO: Quantity deducted: 1  
[2026-06-29 18:07:06] production.INFO: New stock: 5  
[2026-06-29 18:07:06] production.INFO: Stock deduction for product: Vitamin E (Jeritone)  
[2026-06-29 18:07:06] production.INFO: Old stock: 2.00  
[2026-06-29 18:07:06] production.INFO: Quantity deducted: 1  
[2026-06-29 18:07:06] production.INFO: New stock: 1  
[2026-06-29 18:07:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782749225266"} 
[2026-06-29 18:09:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782749350882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"6.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T16:08:39.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"86.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-29T16:08:39.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-29 18:09:11] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-29 18:09:11] production.INFO: Old stock: 6.00  
[2026-06-29 18:09:11] production.INFO: Quantity deducted: 1  
[2026-06-29 18:09:11] production.INFO: New stock: 5  
[2026-06-29 18:09:11] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-06-29 18:09:11] production.INFO: Old stock: 86.00  
[2026-06-29 18:09:11] production.INFO: Quantity deducted: 1  
[2026-06-29 18:09:11] production.INFO: New stock: 85  
[2026-06-29 18:09:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782749350882"} 
[2026-06-29 18:22:20] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782750139078","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":545,"product_id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","sku":"3182","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"13.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3182","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-24T11:45:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":615,"product_id":615,"name":"OROFER SYRUP 150ML","sku":"3252","price":"9000.00","selling_price":"9000.00","purchase_price":"4500.00","quantity":1,"subtotal":9000,"product":{"id":615,"name":"OROFER SYRUP 150ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"9000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3252","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-30T09:27:50.000000Z","brand":null,"category":null}},{"id":468,"product_id":468,"name":"Iron Syrup(Chelferon)","sku":"3105","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":1,"subtotal":3000,"product":{"id":468,"name":"Iron Syrup(Chelferon)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3105","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T09:26:15.000000Z","brand":null,"category":null}},{"id":375,"product_id":375,"name":"Ferrous Sulphate 200mg+Folic Acid 250mg","sku":"3012","price":"1500.00","selling_price":"1500.00","purchase_price":"690.00","quantity":1,"subtotal":1500,"product":{"id":375,"name":"Ferrous Sulphate 200mg+Folic Acid 250mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"690.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"52.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3012","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-03T13:44:26.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-29 18:22:20] production.INFO: Stock deduction for product: MEFENAMIC ACID (FENAMEX) 500MG  
[2026-06-29 18:22:20] production.INFO: Old stock: 13.00  
[2026-06-29 18:22:20] production.INFO: Quantity deducted: 1  
[2026-06-29 18:22:20] production.INFO: New stock: 12  
[2026-06-29 18:22:20] production.INFO: Stock deduction for product: OROFER SYRUP 150ML  
[2026-06-29 18:22:20] production.INFO: Old stock: 10.00  
[2026-06-29 18:22:20] production.INFO: Quantity deducted: 1  
[2026-06-29 18:22:20] production.INFO: New stock: 9  
[2026-06-29 18:22:20] production.INFO: Stock deduction for product: Iron Syrup(Chelferon)  
[2026-06-29 18:22:20] production.INFO: Old stock: 1.00  
[2026-06-29 18:22:20] production.INFO: Quantity deducted: 1  
[2026-06-29 18:22:20] production.INFO: New stock: 0  
[2026-06-29 18:22:20] production.INFO: Stock deduction for product: Ferrous Sulphate 200mg+Folic Acid 250mg  
[2026-06-29 18:22:20] production.INFO: Old stock: 52.00  
[2026-06-29 18:22:20] production.INFO: Quantity deducted: 1  
[2026-06-29 18:22:20] production.INFO: New stock: 51  
[2026-06-29 18:22:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782750139078"} 
[2026-06-29 18:23:12] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782750192406","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"19.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-25T12:21:12.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"22.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T06:02:02.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 18:23:12] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-29 18:23:12] production.INFO: Old stock: 19.00  
[2026-06-29 18:23:12] production.INFO: Quantity deducted: 1  
[2026-06-29 18:23:12] production.INFO: New stock: 18  
[2026-06-29 18:23:12] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-29 18:23:12] production.INFO: Old stock: 22.00  
[2026-06-29 18:23:12] production.INFO: Quantity deducted: 1  
[2026-06-29 18:23:12] production.INFO: New stock: 21  
[2026-06-29 18:23:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782750192406"} 
[2026-06-29 18:41:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782751284249","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"115.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T14:55:30.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 18:41:24] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-29 18:41:24] production.INFO: Old stock: 115.00  
[2026-06-29 18:41:24] production.INFO: Quantity deducted: 2  
[2026-06-29 18:41:24] production.INFO: New stock: 113  
[2026-06-29 18:41:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782751284249"} 
[2026-06-29 18:45:53] production.INFO: Stock Adjustment - Initial State {"product_id":"792","previous_quantity":"1.00","previous_selling_price":"12000.00","validated_data":{"product_id":"792","adjustment_type":"subtract","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-29"}} 
[2026-06-29 18:46:22] production.INFO: Stock Adjustment - Initial State {"product_id":"792","previous_quantity":"1.00","previous_selling_price":"12000.00","validated_data":{"product_id":"792","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-29"}} 
[2026-06-29 18:46:22] production.INFO: Stock Adjustment - After Quantity Save {"product_id":792,"new_quantity":16.0,"current_stock":16.0,"changes_made":"Quantity adjusted"} 
[2026-06-29 18:47:12] production.INFO: Stock Adjustment - Initial State {"product_id":"573","previous_quantity":"7.00","previous_selling_price":"12000.00","validated_data":{"product_id":"573","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-29"}} 
[2026-06-29 18:47:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":573,"new_quantity":22.0,"current_stock":22.0,"changes_made":"Quantity adjusted"} 
[2026-06-29 18:47:39] production.INFO: Stock Adjustment - Initial State {"product_id":"574","previous_quantity":"11.00","previous_selling_price":"12000.00","validated_data":{"product_id":"574","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-29"}} 
[2026-06-29 18:47:39] production.INFO: Stock Adjustment - After Quantity Save {"product_id":574,"new_quantity":21.0,"current_stock":21.0,"changes_made":"Quantity adjusted"} 
[2026-06-29 19:04:39] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782752677875","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"35.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-29T14:51:43.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-27T14:22:30.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 19:04:39] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-06-29 19:04:39] production.INFO: Old stock: 35.00  
[2026-06-29 19:04:39] production.INFO: Quantity deducted: 1  
[2026-06-29 19:04:39] production.INFO: New stock: 34  
[2026-06-29 19:04:39] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-06-29 19:04:39] production.INFO: Old stock: 15.00  
[2026-06-29 19:04:39] production.INFO: Quantity deducted: 1  
[2026-06-29 19:04:39] production.INFO: New stock: 14  
[2026-06-29 19:04:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782752677875"} 
[2026-06-29 19:06:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782752770995","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":3,"subtotal":3000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"42.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-18T08:52:39.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 19:06:11] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-29 19:06:11] production.INFO: Old stock: 42.00  
[2026-06-29 19:06:11] production.INFO: Quantity deducted: 3  
[2026-06-29 19:06:11] production.INFO: New stock: 39  
[2026-06-29 19:06:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782752770995"} 
[2026-06-29 19:15:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782753336353","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":541,"product_id":541,"name":"Manyuchi Premium Condoms","sku":"3178","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":541,"name":"Manyuchi Premium Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"19.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3178","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T14:57:46.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-29 19:15:36] production.INFO: Stock deduction for product: Manyuchi Premium Condoms  
[2026-06-29 19:15:36] production.INFO: Old stock: 19.00  
[2026-06-29 19:15:36] production.INFO: Quantity deducted: 1  
[2026-06-29 19:15:36] production.INFO: New stock: 18  
[2026-06-29 19:15:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782753336353"} 
[2026-06-29 19:24:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782753863694","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"12.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T18:54:41.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-29 19:24:24] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-29 19:24:24] production.INFO: Old stock: 12.00  
[2026-06-29 19:24:24] production.INFO: Quantity deducted: 2  
[2026-06-29 19:24:24] production.INFO: New stock: 10  
[2026-06-29 19:24:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782753863694"} 
[2026-06-29 19:25:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782753938437","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"113.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T16:41:24.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":4000},{"method":"cash","amount":500}]}} 
[2026-06-29 19:26:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782753995406","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"113.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T17:25:56.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":4000},{"method":"airtel_money","amount":500}]}} 
[2026-06-30 07:50:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782798602167","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-29T08:35:30.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 07:50:04] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-06-30 07:50:04] production.INFO: Old stock: 50.00  
[2026-06-30 07:50:04] production.INFO: Quantity deducted: 1  
[2026-06-30 07:50:04] production.INFO: New stock: 49  
[2026-06-30 07:50:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782798602167"} 
[2026-06-30 08:27:09] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782800828351","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"22.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-27T18:24:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"290.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T06:38:15.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 08:27:09] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-06-30 08:27:09] production.INFO: Old stock: 22.00  
[2026-06-30 08:27:09] production.INFO: Quantity deducted: 1  
[2026-06-30 08:27:09] production.INFO: New stock: 21  
[2026-06-30 08:27:09] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-06-30 08:27:09] production.INFO: Old stock: 290.00  
[2026-06-30 08:27:09] production.INFO: Quantity deducted: 1  
[2026-06-30 08:27:09] production.INFO: New stock: 289  
[2026-06-30 08:27:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782800828351"} 
[2026-06-30 08:56:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782802587712","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":1,"subtotal":1000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"39.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-29T17:06:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 08:56:29] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-30 08:56:29] production.INFO: Old stock: 39.00  
[2026-06-30 08:56:29] production.INFO: Quantity deducted: 1  
[2026-06-30 08:56:29] production.INFO: New stock: 38  
[2026-06-30 08:56:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782802587712"} 
[2026-06-30 08:57:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782802624152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":3,"subtotal":3000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"39.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-30T06:56:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 08:57:04] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-06-30 08:57:04] production.INFO: Old stock: 39.00  
[2026-06-30 08:57:04] production.INFO: Quantity deducted: 3  
[2026-06-30 08:57:04] production.INFO: New stock: 36  
[2026-06-30 08:57:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782802624152"} 
[2026-06-30 09:22:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782804161946","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"29.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-21T16:18:20.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"cash"}} 
[2026-06-30 09:22:42] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-06-30 09:22:42] production.INFO: Old stock: 29.00  
[2026-06-30 09:22:42] production.INFO: Quantity deducted: 1  
[2026-06-30 09:22:42] production.INFO: New stock: 28  
[2026-06-30 09:22:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782804161946"} 
[2026-06-30 09:41:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782805286014","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"35.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T13:49:00.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 09:41:27] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-06-30 09:41:27] production.INFO: Old stock: 35.00  
[2026-06-30 09:41:27] production.INFO: Quantity deducted: 1  
[2026-06-30 09:41:27] production.INFO: New stock: 34  
[2026-06-30 09:41:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782805286014"} 
[2026-06-30 10:07:36] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782806856415","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":2,"subtotal":20000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"23.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-28T09:41:17.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":754,"product_id":754,"name":"Vifex Syrup","sku":"3391","price":"10000.00","selling_price":"10000.00","purchase_price":"4850.00","quantity":1,"subtotal":10000,"product":{"id":754,"name":"Vifex Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4850.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"4.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3391","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T09:27:58.000000Z","brand":null,"category":null}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":2,"subtotal":2000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"59.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T15:24:25.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 10:07:36] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-06-30 10:07:36] production.INFO: Old stock: 23.00  
[2026-06-30 10:07:36] production.INFO: Quantity deducted: 2  
[2026-06-30 10:07:36] production.INFO: New stock: 21  
[2026-06-30 10:07:36] production.INFO: Stock deduction for product: Vifex Syrup  
[2026-06-30 10:07:36] production.INFO: Old stock: 4.00  
[2026-06-30 10:07:36] production.INFO: Quantity deducted: 1  
[2026-06-30 10:07:36] production.INFO: New stock: 3  
[2026-06-30 10:07:36] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-30 10:07:36] production.INFO: Old stock: 59.00  
[2026-06-30 10:07:36] production.INFO: Quantity deducted: 2  
[2026-06-30 10:07:36] production.INFO: New stock: 57  
[2026-06-30 10:07:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782806856415"} 
[2026-06-30 10:17:46] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782807465573","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":701,"product_id":701,"name":"Spironolactone 25mg","sku":"3338","price":"2000.00","selling_price":"2000.00","purchase_price":"1600.00","quantity":1,"subtotal":2000,"product":{"id":701,"name":"Spironolactone 25mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3338","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-25T03:52:49.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":403,"product_id":403,"name":"Gaviscon Double Action Tablets","sku":"3040","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":403,"name":"Gaviscon Double Action Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":null,"supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3040","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T11:34:23.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":122,"product_id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","sku":"0708","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"19","supplier_id":null,"purchase_price":"2750.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0708","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-06T17:00:49.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-06-30 10:17:46] production.INFO: Stock deduction for product: Spironolactone 25mg  
[2026-06-30 10:17:46] production.INFO: Old stock: 4.00  
[2026-06-30 10:17:46] production.INFO: Quantity deducted: 1  
[2026-06-30 10:17:46] production.INFO: New stock: 3  
[2026-06-30 10:17:46] production.INFO: Stock deduction for product: Gaviscon Double Action Tablets  
[2026-06-30 10:17:46] production.INFO: Old stock: 11.00  
[2026-06-30 10:17:46] production.INFO: Quantity deducted: 1  
[2026-06-30 10:17:46] production.INFO: New stock: 10  
[2026-06-30 10:17:46] production.INFO: Stock deduction for product: BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g  
[2026-06-30 10:17:46] production.INFO: Old stock: 13.00  
[2026-06-30 10:17:46] production.INFO: Quantity deducted: 1  
[2026-06-30 10:17:46] production.INFO: New stock: 12  
[2026-06-30 10:17:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782807465573"} 
[2026-06-30 10:21:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782807662701","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3500.00","selling_price":"3500.00","purchase_price":"1560.00","quantity":1,"subtotal":3500,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"19.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-18T09:03:56.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 10:21:04] production.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-06-30 10:21:04] production.INFO: Old stock: 19.00  
[2026-06-30 10:21:04] production.INFO: Quantity deducted: 1  
[2026-06-30 10:21:04] production.INFO: New stock: 18  
[2026-06-30 10:21:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782807662701"} 
[2026-06-30 10:24:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782807873379","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":4,"subtotal":10000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"17.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T07:16:18.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":2,"subtotal":2000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"110.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T10:09:18.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 10:24:34] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-06-30 10:24:34] production.INFO: Old stock: 17.00  
[2026-06-30 10:24:34] production.INFO: Quantity deducted: 4  
[2026-06-30 10:24:34] production.INFO: New stock: 13  
[2026-06-30 10:24:34] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-30 10:24:34] production.INFO: Old stock: 110.00  
[2026-06-30 10:24:34] production.INFO: Quantity deducted: 2  
[2026-06-30 10:24:34] production.INFO: New stock: 108  
[2026-06-30 10:24:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782807873379"} 
[2026-06-30 10:27:17] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782808036363","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":"15.00","subtotal":6000,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"15.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T12:05:01.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":807,"product_id":807,"name":"Crepe Bandage 10cm","sku":"1174","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":807,"name":"Crepe Bandage 10cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1174","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T10:44:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 10:27:17] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-30 10:27:17] production.INFO: Old stock: 15.00  
[2026-06-30 10:27:17] production.INFO: Quantity deducted: 15.00  
[2026-06-30 10:27:17] production.INFO: New stock: 0  
[2026-06-30 10:27:17] production.INFO: Stock deduction for product: Crepe Bandage 10cm  
[2026-06-30 10:27:17] production.INFO: Old stock: 1.00  
[2026-06-30 10:27:17] production.INFO: Quantity deducted: 1  
[2026-06-30 10:27:17] production.INFO: New stock: 0  
[2026-06-30 10:27:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782808036363"} 
[2026-06-30 10:51:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782809496606","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"110.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T10:36:54.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-06-30 10:51:36] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-06-30 10:51:36] production.INFO: Old stock: 110.00  
[2026-06-30 10:51:36] production.INFO: Quantity deducted: 1  
[2026-06-30 10:51:36] production.INFO: New stock: 109  
[2026-06-30 10:51:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782809496606"} 
[2026-06-30 10:57:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782809835500","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":511,"product_id":511,"name":"Lisinopril 10mg","sku":"3148","price":"5500.00","selling_price":"5500.00","purchase_price":"2950.00","quantity":2,"subtotal":11000,"product":{"id":511,"name":"Lisinopril 10mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3148","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-10T15:43:38.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 10:57:15] production.INFO: Stock deduction for product: Lisinopril 10mg  
[2026-06-30 10:57:15] production.INFO: Old stock: 8.00  
[2026-06-30 10:57:15] production.INFO: Quantity deducted: 2  
[2026-06-30 10:57:15] production.INFO: New stock: 6  
[2026-06-30 10:57:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782809835500"} 
[2026-06-30 11:14:42] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782810880672","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":524,"product_id":524,"name":"LONART SUSPESION","sku":"3161","price":"9500.00","selling_price":"9500.00","purchase_price":"4995.00","quantity":1,"subtotal":9500,"product":{"id":524,"name":"LONART SUSPESION","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"4995.00","last_purchase_price":null,"selling_price":"9500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3161","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-07T10:22:12.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"8.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T09:41:17.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":472,"product_id":472,"name":"Junior Zinc 20MG","sku":"3109","price":"1000.00","selling_price":"1000.00","purchase_price":"395.00","quantity":1,"subtotal":1000,"product":{"id":472,"name":"Junior Zinc 20MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"395.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3109","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-02T11:45:03.000000Z","brand":null,"category":null}},{"id":732,"product_id":732,"name":"TRICONAZOLE SYRUP (Metronidazole Benzoate 200mg)","sku":"3369","price":"5000.00","selling_price":"5000.00","purchase_price":"2280.00","quantity":1,"subtotal":5000,"product":{"id":732,"name":"TRICONAZOLE SYRUP (Metronidazole Benzoate 200mg)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"2280.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3369","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-05T17:46:44.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":16500},{"method":"airtel_money","amount":2000}]}} 
[2026-06-30 11:16:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782810993480","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":807,"product_id":807,"name":"Crepe Bandage 10cm","sku":"1174","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":807,"name":"Crepe Bandage 10cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1174","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-30T08:36:12.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 11:16:33] production.INFO: Stock deduction for product: Crepe Bandage 10cm  
[2026-06-30 11:16:33] production.INFO: Old stock: 1.00  
[2026-06-30 11:16:33] production.INFO: Quantity deducted: 1  
[2026-06-30 11:16:33] production.INFO: New stock: 0  
[2026-06-30 11:16:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782810993480"} 
[2026-06-30 11:58:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782813514007","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"5.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T16:09:11.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 11:58:34] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-06-30 11:58:34] production.INFO: Old stock: 5.00  
[2026-06-30 11:58:34] production.INFO: Quantity deducted: 1  
[2026-06-30 11:58:34] production.INFO: New stock: 4  
[2026-06-30 11:58:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782813514007"} 
[2026-06-30 12:43:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782816198060","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":574,"product_id":574,"name":"Mucolyn Peads 100ml","sku":"3211","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":574,"name":"Mucolyn Peads 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"21.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3211","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T16:47:39.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 12:43:19] production.INFO: Stock deduction for product: Mucolyn Peads 100ml  
[2026-06-30 12:43:19] production.INFO: Old stock: 21.00  
[2026-06-30 12:43:19] production.INFO: Quantity deducted: 1  
[2026-06-30 12:43:19] production.INFO: New stock: 20  
[2026-06-30 12:43:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782816198060"} 
[2026-06-30 12:44:57] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782816296043","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"276.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T09:47:10.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"307.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T15:55:28.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 12:44:57] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-06-30 12:44:57] production.INFO: Old stock: 276.00  
[2026-06-30 12:44:57] production.INFO: Quantity deducted: 2  
[2026-06-30 12:44:57] production.INFO: New stock: 274  
[2026-06-30 12:44:57] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-30 12:44:57] production.INFO: Old stock: 307.00  
[2026-06-30 12:44:57] production.INFO: Quantity deducted: 2  
[2026-06-30 12:44:57] production.INFO: New stock: 305  
[2026-06-30 12:44:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782816296043"} 
[2026-06-30 12:47:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782816420139","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":511,"product_id":511,"name":"Lisinopril 10mg","sku":"3148","price":"5500.00","selling_price":"5500.00","purchase_price":"2950.00","quantity":2,"subtotal":11000,"product":{"id":511,"name":"Lisinopril 10mg","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3148","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T10:46:15.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":8000},{"method":"cash","amount":3000}]}} 
[2026-06-30 13:25:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782818749562","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"31.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-28T09:41:17.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 13:25:49] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-06-30 13:25:49] production.INFO: Old stock: 31.00  
[2026-06-30 13:25:49] production.INFO: Quantity deducted: 1  
[2026-06-30 13:25:49] production.INFO: New stock: 30  
[2026-06-30 13:25:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782818749562"} 
[2026-06-30 14:10:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782821403500","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"36.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-29T14:51:43.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"57.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T08:07:36.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 14:10:05] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-06-30 14:10:05] production.INFO: Old stock: 36.00  
[2026-06-30 14:10:05] production.INFO: Quantity deducted: 1  
[2026-06-30 14:10:05] production.INFO: New stock: 35  
[2026-06-30 14:10:05] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-06-30 14:10:05] production.INFO: Old stock: 57.00  
[2026-06-30 14:10:05] production.INFO: Quantity deducted: 1  
[2026-06-30 14:10:05] production.INFO: New stock: 56  
[2026-06-30 14:10:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782821403500"} 
[2026-06-30 14:22:06] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782822126353","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":703,"product_id":703,"name":"Stalcal Tab( Calcium)","sku":"3340","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":1,"subtotal":3000,"product":{"id":703,"name":"Stalcal Tab( Calcium)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"30.00","stock":"30.00","product_type":"Single","tax":null,"sku":"3340","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-03T10:41:09.000000Z","brand":null,"category":null}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"38.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-29T07:38:48.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 14:22:06] production.INFO: Stock deduction for product: Stalcal Tab( Calcium)  
[2026-06-30 14:22:06] production.INFO: Old stock: 30.00  
[2026-06-30 14:22:06] production.INFO: Quantity deducted: 1  
[2026-06-30 14:22:06] production.INFO: New stock: 29  
[2026-06-30 14:22:06] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-30 14:22:06] production.INFO: Old stock: 38.00  
[2026-06-30 14:22:06] production.INFO: Quantity deducted: 2  
[2026-06-30 14:22:06] production.INFO: New stock: 36  
[2026-06-30 14:22:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782822126353"} 
[2026-06-30 14:24:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782822252256","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"3.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-06-28T09:10:23.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 14:24:15] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-06-30 14:24:15] production.INFO: Old stock: 3.00  
[2026-06-30 14:24:15] production.INFO: Quantity deducted: 1  
[2026-06-30 14:24:15] production.INFO: New stock: 2  
[2026-06-30 14:24:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782822252256"} 
[2026-06-30 15:07:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782824831983","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"21.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T16:23:12.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 15:07:11] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-06-30 15:07:11] production.INFO: Old stock: 21.00  
[2026-06-30 15:07:11] production.INFO: Quantity deducted: 1  
[2026-06-30 15:07:11] production.INFO: New stock: 20  
[2026-06-30 15:07:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782824831983"} 
[2026-06-30 15:18:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782825513325","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"31.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T19:00:52.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":1,"subtotal":1000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-20T08:22:54.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 15:18:34] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-06-30 15:18:34] production.INFO: Old stock: 31.00  
[2026-06-30 15:18:34] production.INFO: Quantity deducted: 1  
[2026-06-30 15:18:34] production.INFO: New stock: 30  
[2026-06-30 15:18:34] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-06-30 15:18:34] production.INFO: Old stock: 20.00  
[2026-06-30 15:18:34] production.INFO: Quantity deducted: 1  
[2026-06-30 15:18:34] production.INFO: New stock: 19  
[2026-06-30 15:18:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782825513325"} 
[2026-06-30 15:21:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782825693787","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":662,"product_id":662,"name":"QUADRAJEL, 15g","sku":"3299","price":"7000.00","selling_price":"7000.00","purchase_price":"2950.00","quantity":1,"subtotal":7000,"product":{"id":662,"name":"QUADRAJEL, 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"22.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3299","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T15:03:21.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 15:21:35] production.INFO: Stock deduction for product: QUADRAJEL, 15g  
[2026-06-30 15:21:35] production.INFO: Old stock: 22.00  
[2026-06-30 15:21:35] production.INFO: Quantity deducted: 1  
[2026-06-30 15:21:35] production.INFO: New stock: 21  
[2026-06-30 15:21:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782825693787"} 
[2026-06-30 15:30:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782826216969","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"36.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-30T12:22:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 15:30:17] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-06-30 15:30:17] production.INFO: Old stock: 36.00  
[2026-06-30 15:30:17] production.INFO: Quantity deducted: 1  
[2026-06-30 15:30:17] production.INFO: New stock: 35  
[2026-06-30 15:30:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782826216969"} 
[2026-06-30 15:37:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782826656416","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"108.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T08:24:34.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"305.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T10:44:57.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 15:37:37] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-06-30 15:37:37] production.INFO: Old stock: 108.00  
[2026-06-30 15:37:37] production.INFO: Quantity deducted: 1  
[2026-06-30 15:37:37] production.INFO: New stock: 107  
[2026-06-30 15:37:37] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-06-30 15:37:37] production.INFO: Old stock: 305.00  
[2026-06-30 15:37:37] production.INFO: Quantity deducted: 1  
[2026-06-30 15:37:37] production.INFO: New stock: 304  
[2026-06-30 15:37:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782826656416"} 
[2026-06-30 15:48:04] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782827283893","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":37,"product_id":37,"name":"ACYCLOVIR (DAVIR) CREAM","sku":"0664","price":"3000.00","selling_price":"3000.00","purchase_price":"1250.00","quantity":1,"subtotal":3000,"product":{"id":37,"name":"ACYCLOVIR (DAVIR) CREAM","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"21.00","stock":"23.00","product_type":"Single","tax":null,"sku":"0664","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-17T04:31:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":903,"product_id":903,"name":"Muco Asthalin","sku":"PRD-00903","price":"10500.00","selling_price":"10500.00","purchase_price":"5500.00","quantity":1,"subtotal":10500,"product":{"id":903,"name":"Muco Asthalin","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"10500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00903","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:52:22.000000Z","updated_at":"2026-06-18T14:55:50.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 15:48:05] production.INFO: Stock deduction for product: ACYCLOVIR (DAVIR) CREAM  
[2026-06-30 15:48:05] production.INFO: Old stock: 21.00  
[2026-06-30 15:48:05] production.INFO: Quantity deducted: 1  
[2026-06-30 15:48:05] production.INFO: New stock: 20  
[2026-06-30 15:48:05] production.INFO: Stock deduction for product: Muco Asthalin  
[2026-06-30 15:48:05] production.INFO: Old stock: 8.00  
[2026-06-30 15:48:05] production.INFO: Quantity deducted: 1  
[2026-06-30 15:48:05] production.INFO: New stock: 7  
[2026-06-30 15:48:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782827283893"} 
[2026-06-30 16:05:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782828350634","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":728,"product_id":728,"name":"Tranexamic Acid 500mg Tablet","sku":"3365","price":"14000.00","selling_price":"14000.00","purchase_price":"5700.00","quantity":2,"subtotal":28000,"product":{"id":728,"name":"Tranexamic Acid 500mg Tablet","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"5700.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"10.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3365","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-19T06:39:09.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":545,"product_id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","sku":"3182","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3182","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T16:22:20.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 16:05:52] production.INFO: Stock deduction for product: Tranexamic Acid 500mg Tablet  
[2026-06-30 16:05:52] production.INFO: Old stock: 10.00  
[2026-06-30 16:05:52] production.INFO: Quantity deducted: 2  
[2026-06-30 16:05:52] production.INFO: New stock: 8  
[2026-06-30 16:05:52] production.INFO: Stock deduction for product: MEFENAMIC ACID (FENAMEX) 500MG  
[2026-06-30 16:05:52] production.INFO: Old stock: 12.00  
[2026-06-30 16:05:52] production.INFO: Quantity deducted: 1  
[2026-06-30 16:05:52] production.INFO: New stock: 11  
[2026-06-30 16:05:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782828350634"} 
[2026-06-30 16:08:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782828519465","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"10.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T17:24:24.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 16:08:40] production.INFO: Stock deduction for product: HIV Test kit  
[2026-06-30 16:08:40] production.INFO: Old stock: 10.00  
[2026-06-30 16:08:40] production.INFO: Quantity deducted: 2  
[2026-06-30 16:08:40] production.INFO: New stock: 8  
[2026-06-30 16:08:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782828519465"} 
[2026-06-30 16:46:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782830789251","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"22.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T16:47:12.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 16:46:28] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-06-30 16:46:28] production.INFO: Old stock: 22.00  
[2026-06-30 16:46:28] production.INFO: Quantity deducted: 1  
[2026-06-30 16:46:28] production.INFO: New stock: 21  
[2026-06-30 16:46:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782830789251"} 
[2026-06-30 16:51:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782831087130","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"15.00","stock":"102.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T08:36:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 16:51:26] production.INFO: Stock deduction for product: Panadol Extra  
[2026-06-30 16:51:26] production.INFO: Old stock: 15.00  
[2026-06-30 16:51:26] production.INFO: Quantity deducted: 1  
[2026-06-30 16:51:26] production.INFO: New stock: 14  
[2026-06-30 16:51:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782831087130"} 
[2026-06-30 16:54:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782831271761","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":458,"product_id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","sku":"3095","price":"1500.00","selling_price":"1500.00","purchase_price":"760.00","quantity":1,"subtotal":1500,"product":{"id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T09:23:37.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 16:54:32] production.INFO: Stock deduction for product: IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS  
[2026-06-30 16:54:32] production.INFO: Old stock: 25.00  
[2026-06-30 16:54:32] production.INFO: Quantity deducted: 1  
[2026-06-30 16:54:32] production.INFO: New stock: 24  
[2026-06-30 16:54:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782831271761"} 
[2026-06-30 17:04:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782831886175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5500.00","selling_price":"5500.00","purchase_price":"2700.00","quantity":1,"subtotal":5500,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"8.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-22T14:40:07.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 17:04:46] production.INFO: Stock deduction for product: PregStream  
[2026-06-30 17:04:46] production.INFO: Old stock: 8.00  
[2026-06-30 17:04:46] production.INFO: Quantity deducted: 1  
[2026-06-30 17:04:46] production.INFO: New stock: 7  
[2026-06-30 17:04:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782831886175"} 
[2026-06-30 17:06:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782832000454","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"112.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T17:26:35.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 17:06:39] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-30 17:06:39] production.INFO: Old stock: 112.00  
[2026-06-30 17:06:39] production.INFO: Quantity deducted: 1  
[2026-06-30 17:06:39] production.INFO: New stock: 111  
[2026-06-30 17:06:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782832000454"} 
[2026-06-30 17:17:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782832655468","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"14.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-19T16:12:55.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"32.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-28T18:27:10.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 17:17:35] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-06-30 17:17:35] production.INFO: Old stock: 14.00  
[2026-06-30 17:17:35] production.INFO: Quantity deducted: 1  
[2026-06-30 17:17:35] production.INFO: New stock: 13  
[2026-06-30 17:17:35] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-06-30 17:17:35] production.INFO: Old stock: 32.00  
[2026-06-30 17:17:35] production.INFO: Quantity deducted: 1  
[2026-06-30 17:17:35] production.INFO: New stock: 31  
[2026-06-30 17:17:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782832655468"} 
[2026-06-30 17:20:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782832818500","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"116.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T12:56:33.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 17:20:17] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-06-30 17:20:17] production.INFO: Old stock: 116.00  
[2026-06-30 17:20:17] production.INFO: Quantity deducted: 1  
[2026-06-30 17:20:17] production.INFO: New stock: 115  
[2026-06-30 17:20:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782832818500"} 
[2026-06-30 17:24:36] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782833075690","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":430,"product_id":430,"name":"Grand pa","sku":"3067","price":"1000.00","selling_price":"1000.00","purchase_price":"526.00","quantity":2,"subtotal":2000,"product":{"id":430,"name":"Grand pa","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"526.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3067","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T16:22:55.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":503,"product_id":503,"name":"Laxopeg Syrup","sku":"3140","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":503,"name":"Laxopeg Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"18.00","stock":"20.00","product_type":"Single","tax":null,"sku":"3140","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-20","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-22T11:34:23.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 17:24:36] production.INFO: Stock deduction for product: Grand pa  
[2026-06-30 17:24:36] production.INFO: Old stock: 3.00  
[2026-06-30 17:24:36] production.INFO: Quantity deducted: 2  
[2026-06-30 17:24:36] production.INFO: New stock: 1  
[2026-06-30 17:24:36] production.INFO: Stock deduction for product: Laxopeg Syrup  
[2026-06-30 17:24:36] production.INFO: Old stock: 18.00  
[2026-06-30 17:24:36] production.INFO: Quantity deducted: 1  
[2026-06-30 17:24:36] production.INFO: New stock: 17  
[2026-06-30 17:24:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782833075690"} 
[2026-06-30 17:25:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782833155898","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"6.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-18T10:52:00.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 17:25:56] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-30 17:25:56] production.INFO: Old stock: 6.00  
[2026-06-30 17:25:56] production.INFO: Quantity deducted: 1  
[2026-06-30 17:25:56] production.INFO: New stock: 5  
[2026-06-30 17:25:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782833155898"} 
[2026-06-30 17:43:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782834194950","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":2,"subtotal":6000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-01T13:51:00.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 17:43:14] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-06-30 17:43:14] production.INFO: Old stock: 21.00  
[2026-06-30 17:43:14] production.INFO: Quantity deducted: 2  
[2026-06-30 17:43:14] production.INFO: New stock: 19  
[2026-06-30 17:43:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782834194950"} 
[2026-06-30 17:48:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782834516421","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"5.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-30T15:25:56.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 17:48:35] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-06-30 17:48:35] production.INFO: Old stock: 5.00  
[2026-06-30 17:48:35] production.INFO: Quantity deducted: 1  
[2026-06-30 17:48:35] production.INFO: New stock: 4  
[2026-06-30 17:48:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782834516421"} 
[2026-06-30 18:16:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782836181943","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":426,"product_id":426,"name":"Glycodex-c (Chesty Cough)","sku":"3063","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":426,"name":"Glycodex-c (Chesty Cough)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3063","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-27T09:07:40.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"18.00","stock":"34.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-29T16:23:12.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 18:16:22] production.INFO: Stock deduction for product: Glycodex-c (Chesty Cough)  
[2026-06-30 18:16:22] production.INFO: Old stock: 4.00  
[2026-06-30 18:16:22] production.INFO: Quantity deducted: 1  
[2026-06-30 18:16:22] production.INFO: New stock: 3  
[2026-06-30 18:16:22] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-06-30 18:16:22] production.INFO: Old stock: 18.00  
[2026-06-30 18:16:22] production.INFO: Quantity deducted: 1  
[2026-06-30 18:16:22] production.INFO: New stock: 17  
[2026-06-30 18:16:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782836181943"} 
[2026-06-30 18:24:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782836665805","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":910,"product_id":910,"name":"Gantamycin Eye Drop (Getacin)","sku":"PRD-00910","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":910,"name":"Gantamycin Eye Drop (Getacin)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1200.00","last_purchase_price":"1200.00","selling_price":"2500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00910","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-18","created_at":"2026-06-18T14:57:58.000000Z","updated_at":"2026-06-20T16:22:00.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 18:24:26] production.INFO: Stock deduction for product: Gantamycin Eye Drop (Getacin)  
[2026-06-30 18:24:26] production.INFO: Old stock: 9.00  
[2026-06-30 18:24:26] production.INFO: Quantity deducted: 1  
[2026-06-30 18:24:26] production.INFO: New stock: 8  
[2026-06-30 18:24:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782836665805"} 
[2026-06-30 19:06:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782839169323","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":897,"product_id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","sku":"PRD-00897","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":897,"name":"Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00897","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-02","created_at":"2026-06-02T17:10:22.000000Z","updated_at":"2026-06-24T11:57:38.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 19:06:09] production.INFO: Stock deduction for product: Paediatric paracetamol oral suspension BP 120mg/5ml KALDOL  
[2026-06-30 19:06:09] production.INFO: Old stock: 6.00  
[2026-06-30 19:06:09] production.INFO: Quantity deducted: 1  
[2026-06-30 19:06:09] production.INFO: New stock: 5  
[2026-06-30 19:06:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782839169323"} 
[2026-06-30 19:53:13] production.INFO: Product Store - Request Data {"all_data":{"_token":"zaoRCufBdxtmxFFArbgQekx56x95onWF7z0ZJg7A","name":"HIPER MAX LADY","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"445.00","selling_price":"1000.00","description":null,"purchase_quantity":"12.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-30 19:53:13] production.INFO: Product Store - Validation Success {"validated_data":{"name":"HIPER MAX LADY","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"445.00","selling_price":"1000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"12.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-30 19:53:13] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"HIPER MAX LADY","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"445.00","selling_price":"1000.00","sku":"PRD-00924","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"12.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"12.00","last_purchase_price":"445.00","last_purchase_date":"2026-06-30 19:53:13"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-30 19:53:13] production.INFO: Product Store - Product Created {"product_id":924,"product_name":"HIPER MAX LADY","product_sku":"PRD-00924"} 
[2026-06-30 19:54:49] production.INFO: Product Store - Request Data {"all_data":{"_token":"zaoRCufBdxtmxFFArbgQekx56x95onWF7z0ZJg7A","name":"WEttel Shaver","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1800.00","selling_price":"4000.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-30 19:54:49] production.INFO: Product Store - Validation Success {"validated_data":{"name":"WEttel Shaver","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1800.00","selling_price":"4000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-30 19:54:49] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"WEttel Shaver","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1800.00","selling_price":"4000.00","sku":"PRD-00925","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"1800.00","last_purchase_date":"2026-06-30 19:54:49"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-30 19:54:49] production.INFO: Product Store - Product Created {"product_id":925,"product_name":"WEttel Shaver","product_sku":"PRD-00925"} 
[2026-06-30 19:57:23] production.INFO: Product Store - Request Data {"all_data":{"_token":"zaoRCufBdxtmxFFArbgQekx56x95onWF7z0ZJg7A","name":"Parapain","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"184.00","selling_price":"400.00","description":null,"purchase_quantity":"50.00","alert_quantity":"10","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-30 19:57:23] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Parapain","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","selling_price":"400.00","sku":null,"alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"50.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-30 19:57:23] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Parapain","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","selling_price":"400.00","sku":"PRD-00926","alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"50.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"50.00","last_purchase_price":"184.00","last_purchase_date":"2026-06-30 19:57:23"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-30 19:57:23] production.INFO: Product Store - Product Created {"product_id":926,"product_name":"Parapain","product_sku":"PRD-00926"} 
[2026-06-30 19:59:20] production.INFO: Product Store - Request Data {"all_data":{"_token":"zaoRCufBdxtmxFFArbgQekx56x95onWF7z0ZJg7A","name":"ASprin Red","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"65.00","selling_price":"200.00","description":null,"purchase_quantity":"150.00","alert_quantity":"10","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-06-30 19:59:20] production.INFO: Product Store - Validation Success {"validated_data":{"name":"ASprin Red","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"65.00","selling_price":"200.00","sku":null,"alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"150.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-06-30 19:59:20] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"ASprin Red","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"65.00","selling_price":"200.00","sku":"PRD-00927","alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"150.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"150.00","last_purchase_price":"65.00","last_purchase_date":"2026-06-30 19:59:20"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-06-30 19:59:20] production.INFO: Product Store - Product Created {"product_id":927,"product_name":"ASprin Red","product_sku":"PRD-00927"} 
[2026-06-30 20:00:07] production.INFO: Stock Adjustment - Initial State {"product_id":"699","previous_quantity":"8.00","previous_selling_price":"4000.00","validated_data":{"product_id":"699","adjustment_type":"add","quantity":"6","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-30"}} 
[2026-06-30 20:00:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":699,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-06-30 20:00:28] production.INFO: Stock Adjustment - Initial State {"product_id":"440","previous_quantity":"72.00","previous_selling_price":"400.00","validated_data":{"product_id":"440","adjustment_type":"add","quantity":"100","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-30"}} 
[2026-06-30 20:00:28] production.INFO: Stock Adjustment - After Quantity Save {"product_id":440,"new_quantity":172.0,"current_stock":172.0,"changes_made":"Quantity adjusted"} 
[2026-06-30 20:00:53] production.INFO: Stock Adjustment - Initial State {"product_id":"623","previous_quantity":"14.00","previous_selling_price":"400.00","validated_data":{"product_id":"623","adjustment_type":"add","quantity":"150","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-06-30"}} 
[2026-06-30 20:00:53] production.INFO: Stock Adjustment - After Quantity Save {"product_id":623,"new_quantity":164.0,"current_stock":164.0,"changes_made":"Quantity adjusted"} 
[2026-06-30 20:06:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782842777445","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":4,"subtotal":2000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"190.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T18:17:35.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-06-30 20:06:17] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-06-30 20:06:17] production.INFO: Old stock: 190.00  
[2026-06-30 20:06:17] production.INFO: Quantity deducted: 4  
[2026-06-30 20:06:17] production.INFO: New stock: 186  
[2026-06-30 20:06:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782842777445"} 
[2026-06-30 20:18:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782843507243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":527,"product_id":527,"name":"Lorhistina(Loratadine) Tablets","sku":"3164","price":"2000.00","selling_price":"2000.00","purchase_price":"983.00","quantity":1,"subtotal":2000,"product":{"id":527,"name":"Lorhistina(Loratadine) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"983.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3164","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-13T08:52:08.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-06-30 20:18:26] production.INFO: Stock deduction for product: Lorhistina(Loratadine) Tablets  
[2026-06-30 20:18:26] production.INFO: Old stock: 5.00  
[2026-06-30 20:18:26] production.INFO: Quantity deducted: 1  
[2026-06-30 20:18:26] production.INFO: New stock: 4  
[2026-06-30 20:18:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782843507243"} 
[2026-06-30 20:19:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782843569938","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"111.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T15:06:39.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-06-30 20:19:29] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-06-30 20:19:29] production.INFO: Old stock: 111.00  
[2026-06-30 20:19:29] production.INFO: Quantity deducted: 1  
[2026-06-30 20:19:29] production.INFO: New stock: 110  
[2026-06-30 20:19:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782843569938"} 
[2026-07-01 07:59:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782885547970","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"110.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T18:19:29.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 07:59:07] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-01 07:59:07] production.INFO: Old stock: 110.00  
[2026-07-01 07:59:07] production.INFO: Quantity deducted: 1  
[2026-07-01 07:59:07] production.INFO: New stock: 109  
[2026-07-01 07:59:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782885547970"} 
[2026-07-01 08:06:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782885985599","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"289.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T06:27:09.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 08:06:23] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-01 08:06:23] production.INFO: Old stock: 289.00  
[2026-07-01 08:06:23] production.INFO: Quantity deducted: 1  
[2026-07-01 08:06:23] production.INFO: New stock: 288  
[2026-07-01 08:06:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782885985599"} 
[2026-07-01 08:42:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782888126728","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"109.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T08:51:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-01 08:42:05] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-01 08:42:05] production.INFO: Old stock: 109.00  
[2026-07-01 08:42:05] production.INFO: Quantity deducted: 1  
[2026-07-01 08:42:05] production.INFO: New stock: 108  
[2026-07-01 08:42:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782888126728"} 
[2026-07-01 08:50:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782888648734","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"30.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-30T11:25:49.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 08:50:48] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-01 08:50:48] production.INFO: Old stock: 30.00  
[2026-07-01 08:50:48] production.INFO: Quantity deducted: 1  
[2026-07-01 08:50:48] production.INFO: New stock: 29  
[2026-07-01 08:50:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782888648734"} 
[2026-07-01 08:51:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782888678470","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"274.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T10:44:57.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 08:51:17] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-01 08:51:17] production.INFO: Old stock: 274.00  
[2026-07-01 08:51:17] production.INFO: Quantity deducted: 3  
[2026-07-01 08:51:17] production.INFO: New stock: 271  
[2026-07-01 08:51:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782888678470"} 
[2026-07-01 08:58:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782889119244","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"109.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T05:59:07.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 08:58:39] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-01 08:58:39] production.INFO: Old stock: 109.00  
[2026-07-01 08:58:39] production.INFO: Quantity deducted: 1  
[2026-07-01 08:58:39] production.INFO: New stock: 108  
[2026-07-01 08:58:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782889119244"} 
[2026-07-01 09:04:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782889443748","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"47.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T16:07:17.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 09:04:04] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-07-01 09:04:04] production.INFO: Old stock: 47.00  
[2026-07-01 09:04:04] production.INFO: Quantity deducted: 1  
[2026-07-01 09:04:04] production.INFO: New stock: 46  
[2026-07-01 09:04:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782889443748"} 
[2026-07-01 09:45:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782891900337","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":61,"product_id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","sku":"0674","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":3,"subtotal":4500,"product":{"id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"23.00","stock":"35.00","product_type":"Single","tax":null,"sku":"0674","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-27T16:30:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 09:45:00] production.INFO: Stock deduction for product: AMLODIPINE 5MG (AMLODAWA) 10s  
[2026-07-01 09:45:00] production.INFO: Old stock: 23.00  
[2026-07-01 09:45:00] production.INFO: Quantity deducted: 3  
[2026-07-01 09:45:00] production.INFO: New stock: 20  
[2026-07-01 09:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782891900337"} 
[2026-07-01 09:54:44] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782892485375","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"110.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-29T15:46:11.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":224,"product_id":224,"name":"Delased Dry Cough (Syrup)","sku":"1161","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":224,"name":"Delased Dry Cough (Syrup)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"31","brand_id":"9","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"1.00","stock":"2.00","product_type":"Single","tax":null,"sku":"1161","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-19T15:31:17.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"21.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T15:45:32.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 09:54:44] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-01 09:54:44] production.INFO: Old stock: 110.00  
[2026-07-01 09:54:44] production.INFO: Quantity deducted: 1  
[2026-07-01 09:54:44] production.INFO: New stock: 109  
[2026-07-01 09:54:44] production.INFO: Stock deduction for product: Delased Dry Cough (Syrup)  
[2026-07-01 09:54:44] production.INFO: Old stock: 1.00  
[2026-07-01 09:54:44] production.INFO: Quantity deducted: 1  
[2026-07-01 09:54:44] production.INFO: New stock: 0  
[2026-07-01 09:54:44] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-01 09:54:44] production.INFO: Old stock: 21.00  
[2026-07-01 09:54:44] production.INFO: Quantity deducted: 1  
[2026-07-01 09:54:44] production.INFO: New stock: 20  
[2026-07-01 09:54:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782892485375"} 
[2026-07-01 10:29:57] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782894597982","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"110.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-01T08:28:09.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"21.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T08:28:09.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":223,"product_id":223,"name":"Delased Chesty Coughs (Syrup)","sku":"1160","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":223,"name":"Delased Chesty Coughs (Syrup)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"31","brand_id":"9","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"1160","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-05T08:49:23.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 10:29:57] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-01 10:29:57] production.INFO: Old stock: 110.00  
[2026-07-01 10:29:57] production.INFO: Quantity deducted: 1  
[2026-07-01 10:29:57] production.INFO: New stock: 109  
[2026-07-01 10:29:57] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-01 10:29:57] production.INFO: Old stock: 21.00  
[2026-07-01 10:29:57] production.INFO: Quantity deducted: 1  
[2026-07-01 10:29:57] production.INFO: New stock: 20  
[2026-07-01 10:29:57] production.INFO: Stock deduction for product: Delased Chesty Coughs (Syrup)  
[2026-07-01 10:29:57] production.INFO: Old stock: 3.00  
[2026-07-01 10:29:57] production.INFO: Quantity deducted: 1  
[2026-07-01 10:29:57] production.INFO: New stock: 2  
[2026-07-01 10:29:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782894597982"} 
[2026-07-01 10:41:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782895264939","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"186.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T18:06:17.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"34.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T07:41:27.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 10:41:03] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-01 10:41:03] production.INFO: Old stock: 186.00  
[2026-07-01 10:41:03] production.INFO: Quantity deducted: 2  
[2026-07-01 10:41:03] production.INFO: New stock: 184  
[2026-07-01 10:41:03] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-01 10:41:03] production.INFO: Old stock: 34.00  
[2026-07-01 10:41:03] production.INFO: Quantity deducted: 1  
[2026-07-01 10:41:03] production.INFO: New stock: 33  
[2026-07-01 10:41:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782895264939"} 
[2026-07-01 11:14:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782897278763","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"108.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T06:58:39.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 11:14:39] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-01 11:14:39] production.INFO: Old stock: 108.00  
[2026-07-01 11:14:39] production.INFO: Quantity deducted: 1  
[2026-07-01 11:14:39] production.INFO: New stock: 107  
[2026-07-01 11:14:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782897278763"} 
[2026-07-01 11:26:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782897976008","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"107.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T13:37:37.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 11:26:15] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-01 11:26:15] production.INFO: Old stock: 107.00  
[2026-07-01 11:26:15] production.INFO: Quantity deducted: 1  
[2026-07-01 11:26:15] production.INFO: New stock: 106  
[2026-07-01 11:26:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782897976008"} 
[2026-07-01 14:02:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782907371942","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":2,"subtotal":6000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T17:33:38.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-01 14:02:50] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-07-01 14:02:50] production.INFO: Old stock: 12.00  
[2026-07-01 14:02:50] production.INFO: Quantity deducted: 2  
[2026-07-01 14:02:50] production.INFO: New stock: 10  
[2026-07-01 14:02:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782907371942"} 
[2026-07-01 14:58:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782910721344","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":471,"product_id":471,"name":"JOYKID SUSP. (Ibuprofen & Paracetamol), 60ml","sku":"3108","price":"6000.00","selling_price":"6000.00","purchase_price":"2900.00","quantity":1,"subtotal":6000,"product":{"id":471,"name":"JOYKID SUSP. (Ibuprofen & Paracetamol), 60ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2900.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3108","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T08:09:58.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 14:58:40] production.INFO: Stock deduction for product: JOYKID SUSP. (Ibuprofen & Paracetamol), 60ml  
[2026-07-01 14:58:40] production.INFO: Old stock: 8.00  
[2026-07-01 14:58:40] production.INFO: Quantity deducted: 1  
[2026-07-01 14:58:40] production.INFO: New stock: 7  
[2026-07-01 14:58:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782910721344"} 
[2026-07-01 14:59:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782910787272","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":701,"product_id":701,"name":"Spironolactone 25mg","sku":"3338","price":"2000.00","selling_price":"2000.00","purchase_price":"1600.00","quantity":3,"subtotal":6000,"product":{"id":701,"name":"Spironolactone 25mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3338","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T08:17:46.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 14:59:46] production.INFO: Stock deduction for product: Spironolactone 25mg  
[2026-07-01 14:59:46] production.INFO: Old stock: 3.00  
[2026-07-01 14:59:46] production.INFO: Quantity deducted: 3  
[2026-07-01 14:59:46] production.INFO: New stock: 0  
[2026-07-01 14:59:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782910787272"} 
[2026-07-01 15:26:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782912386009","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"46.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-01T07:04:04.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 15:26:24] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-07-01 15:26:24] production.INFO: Old stock: 46.00  
[2026-07-01 15:26:24] production.INFO: Quantity deducted: 1  
[2026-07-01 15:26:24] production.INFO: New stock: 45  
[2026-07-01 15:26:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782912386009"} 
[2026-07-01 15:52:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782913924924","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":913,"product_id":913,"name":"Olopatadine  Solution 2%","sku":"PRD-00913","price":"17000.00","selling_price":"17000.00","purchase_price":"8500.00","quantity":1,"subtotal":17000,"product":{"id":913,"name":"Olopatadine  Solution 2%","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"8500.00","last_purchase_price":"8500.00","selling_price":"17000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00913","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-06-22","created_at":"2026-06-22T14:37:07.000000Z","updated_at":"2026-06-22T14:37:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"8.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-21T13:07:13.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 15:52:05] production.INFO: Stock deduction for product: Olopatadine  Solution 2%  
[2026-07-01 15:52:05] production.INFO: Old stock: 3.00  
[2026-07-01 15:52:05] production.INFO: Quantity deducted: 1  
[2026-07-01 15:52:05] production.INFO: New stock: 2  
[2026-07-01 15:52:05] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-01 15:52:05] production.INFO: Old stock: 8.00  
[2026-07-01 15:52:05] production.INFO: Quantity deducted: 1  
[2026-07-01 15:52:05] production.INFO: New stock: 7  
[2026-07-01 15:52:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782913924924"} 
[2026-07-01 15:56:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782914166867","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"20.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T13:07:11.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 15:56:07] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-01 15:56:07] production.INFO: Old stock: 20.00  
[2026-07-01 15:56:07] production.INFO: Quantity deducted: 1  
[2026-07-01 15:56:07] production.INFO: New stock: 19  
[2026-07-01 15:56:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782914166867"} 
[2026-07-01 15:58:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782914304234","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"107.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T09:14:39.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 15:58:24] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-01 15:58:24] production.INFO: Old stock: 107.00  
[2026-07-01 15:58:24] production.INFO: Quantity deducted: 1  
[2026-07-01 15:58:24] production.INFO: New stock: 106  
[2026-07-01 15:58:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782914304234"} 
[2026-07-01 15:59:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782914376570","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"304.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T13:37:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 15:59:37] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-01 15:59:37] production.INFO: Old stock: 304.00  
[2026-07-01 15:59:37] production.INFO: Quantity deducted: 1  
[2026-07-01 15:59:37] production.INFO: New stock: 303  
[2026-07-01 15:59:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782914376570"} 
[2026-07-01 16:14:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782915290022","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":2,"subtotal":5000,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"56.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T10:38:30.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 16:14:50] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-07-01 16:14:50] production.INFO: Old stock: 56.00  
[2026-07-01 16:14:50] production.INFO: Quantity deducted: 2  
[2026-07-01 16:14:50] production.INFO: New stock: 54  
[2026-07-01 16:14:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782915290022"} 
[2026-07-01 16:25:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782915898996","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"19.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T13:56:07.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"29.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-01T06:50:48.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"34.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T11:43:44.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 16:25:00] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-01 16:25:00] production.INFO: Old stock: 19.00  
[2026-07-01 16:25:00] production.INFO: Quantity deducted: 1  
[2026-07-01 16:25:00] production.INFO: New stock: 18  
[2026-07-01 16:25:00] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-01 16:25:00] production.INFO: Old stock: 29.00  
[2026-07-01 16:25:00] production.INFO: Quantity deducted: 1  
[2026-07-01 16:25:00] production.INFO: New stock: 28  
[2026-07-01 16:25:00] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-01 16:25:00] production.INFO: Old stock: 34.00  
[2026-07-01 16:25:00] production.INFO: Quantity deducted: 1  
[2026-07-01 16:25:00] production.INFO: New stock: 33  
[2026-07-01 16:25:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782915898996"} 
[2026-07-01 16:27:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782916053411","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":537,"product_id":537,"name":"Maladox Tablets 3T","sku":"3174","price":"2000.00","selling_price":"2000.00","purchase_price":"1200.00","quantity":1,"subtotal":2000,"product":{"id":537,"name":"Maladox Tablets 3T","business_location":"EDUC Pharmacy","unit_id":"59","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"23.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3174","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-23T10:46:01.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"33.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T14:25:00.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 16:27:34] production.INFO: Stock deduction for product: Maladox Tablets 3T  
[2026-07-01 16:27:34] production.INFO: Old stock: 23.00  
[2026-07-01 16:27:34] production.INFO: Quantity deducted: 1  
[2026-07-01 16:27:34] production.INFO: New stock: 22  
[2026-07-01 16:27:34] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-01 16:27:34] production.INFO: Old stock: 33.00  
[2026-07-01 16:27:34] production.INFO: Quantity deducted: 1  
[2026-07-01 16:27:34] production.INFO: New stock: 32  
[2026-07-01 16:27:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782916053411"} 
[2026-07-01 16:41:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782916905871","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":828,"product_id":828,"name":"Prednisolone Acetate Ophthalmic Suspension","sku":"PRD-00828","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":828,"name":"Prednisolone Acetate Ophthalmic Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"11","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"1.00","stock":"3.00","product_type":"Single","tax":null,"sku":"PRD-00828","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-03","last_purchase_date":"2026-04-03","created_at":"2026-04-03T10:43:04.000000Z","updated_at":"2026-05-22T04:38:48.000000Z","brand":{"id":11,"name":"AGIO","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 16:41:46] production.INFO: Stock deduction for product: Prednisolone Acetate Ophthalmic Suspension  
[2026-07-01 16:41:46] production.INFO: Old stock: 1.00  
[2026-07-01 16:41:46] production.INFO: Quantity deducted: 1  
[2026-07-01 16:41:46] production.INFO: New stock: 0  
[2026-07-01 16:41:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782916905871"} 
[2026-07-01 16:45:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782917129782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"35.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-30T13:30:17.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 16:45:30] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-01 16:45:30] production.INFO: Old stock: 35.00  
[2026-07-01 16:45:30] production.INFO: Quantity deducted: 2  
[2026-07-01 16:45:30] production.INFO: New stock: 33  
[2026-07-01 16:45:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782917129782"} 
[2026-07-01 17:02:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782918147035","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":835,"product_id":835,"name":"Gauze Bandage 7.5cm","sku":"PRD-00835","price":"10000.00","selling_price":"10000.00","purchase_price":"4750.00","quantity":1,"subtotal":10000,"product":{"id":835,"name":"Gauze Bandage 7.5cm","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4750.00","last_purchase_price":"4750.00","selling_price":"10000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00835","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:51:10.000000Z","updated_at":"2026-05-26T09:49:32.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":40,"product_id":40,"name":"Adhesive Plater 5cm","sku":"1168","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":40,"name":"Adhesive Plater 5cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1168","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-20T15:57:58.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 17:02:28] production.INFO: Stock deduction for product: Gauze Bandage 7.5cm  
[2026-07-01 17:02:28] production.INFO: Old stock: 2.00  
[2026-07-01 17:02:28] production.INFO: Quantity deducted: 1  
[2026-07-01 17:02:28] production.INFO: New stock: 1  
[2026-07-01 17:02:28] production.INFO: Stock deduction for product: Adhesive Plater 5cm  
[2026-07-01 17:02:28] production.INFO: Old stock: 11.00  
[2026-07-01 17:02:28] production.INFO: Quantity deducted: 1  
[2026-07-01 17:02:28] production.INFO: New stock: 10  
[2026-07-01 17:02:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782918147035"} 
[2026-07-01 17:09:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782918550833","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"32.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T14:27:34.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 17:09:11] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-01 17:09:11] production.INFO: Old stock: 32.00  
[2026-07-01 17:09:11] production.INFO: Quantity deducted: 1  
[2026-07-01 17:09:11] production.INFO: New stock: 31  
[2026-07-01 17:09:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782918550833"} 
[2026-07-01 17:10:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782918625504","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"106.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T13:58:24.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 17:10:25] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-01 17:10:25] production.INFO: Old stock: 106.00  
[2026-07-01 17:10:25] production.INFO: Quantity deducted: 1  
[2026-07-01 17:10:25] production.INFO: New stock: 105  
[2026-07-01 17:10:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782918625504"} 
[2026-07-01 17:12:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782918761464","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-27T12:41:01.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 17:12:43] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-07-01 17:12:43] production.INFO: Old stock: 7.00  
[2026-07-01 17:12:43] production.INFO: Quantity deducted: 1  
[2026-07-01 17:12:43] production.INFO: New stock: 6  
[2026-07-01 17:12:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782918761464"} 
[2026-07-01 17:23:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782919390542","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":859,"product_id":859,"name":"Vagid 500g pessary","sku":"PRD-00859","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":859,"name":"Vagid 500g pessary","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","last_purchase_price":"3250.00","selling_price":"6500.00","current_stock":"6.00","stock":"9.00","product_type":"Single","tax":null,"sku":"PRD-00859","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:20:39.000000Z","updated_at":"2026-06-24T14:08:08.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"109.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-01T08:29:57.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-01 17:23:11] production.INFO: Stock deduction for product: Vagid 500g pessary  
[2026-07-01 17:23:11] production.INFO: Old stock: 6.00  
[2026-07-01 17:23:11] production.INFO: Quantity deducted: 1  
[2026-07-01 17:23:11] production.INFO: New stock: 5  
[2026-07-01 17:23:11] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-01 17:23:11] production.INFO: Old stock: 109.00  
[2026-07-01 17:23:11] production.INFO: Quantity deducted: 1  
[2026-07-01 17:23:11] production.INFO: New stock: 108  
[2026-07-01 17:23:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782919390542"} 
[2026-07-01 17:33:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782920012291","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"9.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T15:41:51.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-01 17:33:33] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-07-01 17:33:33] production.INFO: Old stock: 9.00  
[2026-07-01 17:33:33] production.INFO: Quantity deducted: 1  
[2026-07-01 17:33:33] production.INFO: New stock: 8  
[2026-07-01 17:33:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782920012291"} 
[2026-07-01 17:33:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782920032738","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"184.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T08:41:03.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 17:33:52] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-01 17:33:52] production.INFO: Old stock: 184.00  
[2026-07-01 17:33:52] production.INFO: Quantity deducted: 2  
[2026-07-01 17:33:52] production.INFO: New stock: 182  
[2026-07-01 17:33:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782920032738"} 
[2026-07-01 17:53:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782921184765","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"105.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T15:10:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 17:53:06] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-01 17:53:06] production.INFO: Old stock: 105.00  
[2026-07-01 17:53:06] production.INFO: Quantity deducted: 1  
[2026-07-01 17:53:06] production.INFO: New stock: 104  
[2026-07-01 17:53:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782921184765"} 
[2026-07-01 18:02:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782921747844","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":281,"product_id":281,"name":"ENALAPRIL MALEATA TABLETS 10 MG (ENLOW)","sku":"0799","price":"2000.00","selling_price":"2000.00","purchase_price":"1200.00","quantity":1,"subtotal":2000,"product":{"id":281,"name":"ENALAPRIL MALEATA TABLETS 10 MG (ENLOW)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"50.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0799","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-17T17:50:18.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"85.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-29T16:09:11.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 18:02:28] production.INFO: Stock deduction for product: ENALAPRIL MALEATA TABLETS 10 MG (ENLOW)  
[2026-07-01 18:02:28] production.INFO: Old stock: 50.00  
[2026-07-01 18:02:28] production.INFO: Quantity deducted: 1  
[2026-07-01 18:02:28] production.INFO: New stock: 49  
[2026-07-01 18:02:28] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-01 18:02:28] production.INFO: Old stock: 85.00  
[2026-07-01 18:02:28] production.INFO: Quantity deducted: 1  
[2026-07-01 18:02:28] production.INFO: New stock: 84  
[2026-07-01 18:02:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782921747844"} 
[2026-07-01 18:20:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782922824623","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":3,"subtotal":9000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"10.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T12:02:50.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-01 18:20:27] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-07-01 18:20:27] production.INFO: Old stock: 10.00  
[2026-07-01 18:20:27] production.INFO: Quantity deducted: 3  
[2026-07-01 18:20:27] production.INFO: New stock: 7  
[2026-07-01 18:20:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782922824623"} 
[2026-07-01 18:45:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782924357263","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":667,"product_id":667,"name":"Relcer Gel 180ml","sku":"3304","price":"18000.00","selling_price":"18000.00","purchase_price":"9000.00","quantity":1,"subtotal":18000,"product":{"id":667,"name":"Relcer Gel 180ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"9000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"2.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3304","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T15:43:58.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 18:45:59] production.INFO: Stock deduction for product: Relcer Gel 180ml  
[2026-07-01 18:45:59] production.INFO: Old stock: 2.00  
[2026-07-01 18:45:59] production.INFO: Quantity deducted: 1  
[2026-07-01 18:45:59] production.INFO: New stock: 1  
[2026-07-01 18:45:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782924357263"} 
[2026-07-01 19:20:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782926452930","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"172.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T18:00:28.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 19:20:55] production.INFO: Stock deduction for product: HEDAX  
[2026-07-01 19:20:55] production.INFO: Old stock: 172.00  
[2026-07-01 19:20:55] production.INFO: Quantity deducted: 5  
[2026-07-01 19:20:55] production.INFO: New stock: 167  
[2026-07-01 19:20:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782926452930"} 
[2026-07-01 19:48:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782928091255","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"2.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-06-30T12:24:15.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 19:48:13] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-07-01 19:48:13] production.INFO: Old stock: 2.00  
[2026-07-01 19:48:13] production.INFO: Quantity deducted: 1  
[2026-07-01 19:48:13] production.INFO: New stock: 1  
[2026-07-01 19:48:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782928091255"} 
[2026-07-01 19:48:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782928110568","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"7.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-01T13:52:05.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 19:48:32] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-01 19:48:32] production.INFO: Old stock: 7.00  
[2026-07-01 19:48:32] production.INFO: Quantity deducted: 1  
[2026-07-01 19:48:32] production.INFO: New stock: 6  
[2026-07-01 19:48:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782928110568"} 
[2026-07-01 19:49:41] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1782928178848","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":603,"product_id":603,"name":"Omeprazole Capules 20mg( Zosec )","sku":"3240","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":603,"name":"Omeprazole Capules 20mg( Zosec )","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3240","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T17:03:38.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"35.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-30T12:10:05.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"99.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T06:24:51.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"33.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-01T14:45:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"34.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-29T17:04:39.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-01 19:49:41] production.INFO: Stock deduction for product: Omeprazole Capules 20mg( Zosec )  
[2026-07-01 19:49:41] production.INFO: Old stock: 2.00  
[2026-07-01 19:49:41] production.INFO: Quantity deducted: 1  
[2026-07-01 19:49:41] production.INFO: New stock: 1  
[2026-07-01 19:49:41] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-07-01 19:49:41] production.INFO: Old stock: 35.00  
[2026-07-01 19:49:41] production.INFO: Quantity deducted: 1  
[2026-07-01 19:49:41] production.INFO: New stock: 34  
[2026-07-01 19:49:41] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-01 19:49:41] production.INFO: Old stock: 99.00  
[2026-07-01 19:49:41] production.INFO: Quantity deducted: 1  
[2026-07-01 19:49:41] production.INFO: New stock: 98  
[2026-07-01 19:49:41] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-01 19:49:41] production.INFO: Old stock: 33.00  
[2026-07-01 19:49:41] production.INFO: Quantity deducted: 1  
[2026-07-01 19:49:41] production.INFO: New stock: 32  
[2026-07-01 19:49:41] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-01 19:49:41] production.INFO: Old stock: 34.00  
[2026-07-01 19:49:41] production.INFO: Quantity deducted: 1  
[2026-07-01 19:49:41] production.INFO: New stock: 33  
[2026-07-01 19:49:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782928178848"} 
[2026-07-01 20:23:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782930194419","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"45.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-01T13:26:24.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 20:23:16] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-07-01 20:23:16] production.INFO: Old stock: 45.00  
[2026-07-01 20:23:16] production.INFO: Quantity deducted: 1  
[2026-07-01 20:23:16] production.INFO: New stock: 44  
[2026-07-01 20:23:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782930194419"} 
[2026-07-01 20:23:49] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782930227233","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"98.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T17:49:41.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"108.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T06:42:05.000000Z","brand":null,"category":null}},{"id":405,"product_id":405,"name":"Gavison Double Action Liquid","sku":"3042","price":"50000.00","selling_price":"50000.00","purchase_price":"25000.00","quantity":1,"subtotal":50000,"product":{"id":405,"name":"Gavison Double Action Liquid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"25000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"2.00","stock":"3.00","product_type":"Single","tax":null,"sku":"3042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-16T15:00:18.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 20:23:49] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-01 20:23:49] production.INFO: Old stock: 98.00  
[2026-07-01 20:23:49] production.INFO: Quantity deducted: 1  
[2026-07-01 20:23:49] production.INFO: New stock: 97  
[2026-07-01 20:23:49] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-01 20:23:49] production.INFO: Old stock: 108.00  
[2026-07-01 20:23:49] production.INFO: Quantity deducted: 1  
[2026-07-01 20:23:49] production.INFO: New stock: 107  
[2026-07-01 20:23:49] production.INFO: Stock deduction for product: Gavison Double Action Liquid  
[2026-07-01 20:23:49] production.INFO: Old stock: 2.00  
[2026-07-01 20:23:49] production.INFO: Quantity deducted: 1  
[2026-07-01 20:23:49] production.INFO: New stock: 1  
[2026-07-01 20:23:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782930227233"} 
[2026-07-01 20:24:29] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1782930267574","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"21.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-06-30T06:27:09.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":2,"subtotal":8000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"33.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-01T17:49:41.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":217,"product_id":217,"name":"Dawasprin 75","sku":"1369","price":"1000.00","selling_price":"1000.00","purchase_price":"420.00","quantity":1,"subtotal":1000,"product":{"id":217,"name":"Dawasprin 75","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"7","brand_id":"31","supplier_id":null,"purchase_price":"420.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"18.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1369","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-17T15:58:59.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"61.00","stock":"62.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-11T17:56:44.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 20:24:29] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-01 20:24:29] production.INFO: Old stock: 21.00  
[2026-07-01 20:24:29] production.INFO: Quantity deducted: 1  
[2026-07-01 20:24:29] production.INFO: New stock: 20  
[2026-07-01 20:24:29] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-01 20:24:29] production.INFO: Old stock: 33.00  
[2026-07-01 20:24:29] production.INFO: Quantity deducted: 2  
[2026-07-01 20:24:29] production.INFO: New stock: 31  
[2026-07-01 20:24:29] production.INFO: Stock deduction for product: Dawasprin 75  
[2026-07-01 20:24:29] production.INFO: Old stock: 18.00  
[2026-07-01 20:24:29] production.INFO: Quantity deducted: 1  
[2026-07-01 20:24:29] production.INFO: New stock: 17  
[2026-07-01 20:24:29] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-07-01 20:24:29] production.INFO: Old stock: 61.00  
[2026-07-01 20:24:29] production.INFO: Quantity deducted: 1  
[2026-07-01 20:24:29] production.INFO: New stock: 60  
[2026-07-01 20:24:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782930267574"} 
[2026-07-01 20:42:41] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782931357845","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"75.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T16:14:11.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"8.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T14:08:40.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"standard_bank","amount":12000}]}} 
[2026-07-01 20:58:57] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782932335798","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":148,"product_id":148,"name":"CALAMINE LOTION 100ML","sku":"0716","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":148,"name":"CALAMINE LOTION 100ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0716","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-26T07:29:49.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"20.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-07-01T18:24:29.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-01 20:58:57] production.INFO: Stock deduction for product: CALAMINE LOTION 100ML  
[2026-07-01 20:58:57] production.INFO: Old stock: 10.00  
[2026-07-01 20:58:57] production.INFO: Quantity deducted: 1  
[2026-07-01 20:58:57] production.INFO: New stock: 9  
[2026-07-01 20:58:57] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-01 20:58:57] production.INFO: Old stock: 20.00  
[2026-07-01 20:58:57] production.INFO: Quantity deducted: 1  
[2026-07-01 20:58:57] production.INFO: New stock: 19  
[2026-07-01 20:58:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782932335798"} 
[2026-07-02 07:52:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782971552757","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":926,"product_id":926,"name":"Parapain","sku":"PRD-00926","price":"400.00","selling_price":"400.00","purchase_price":"184.00","quantity":4,"subtotal":1600,"product":{"id":926,"name":"Parapain","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","last_purchase_price":"184.00","selling_price":"400.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00926","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:57:23.000000Z","updated_at":"2026-06-30T17:57:23.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T18:13:34.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 07:52:33] production.INFO: Stock deduction for product: Parapain  
[2026-07-02 07:52:33] production.INFO: Old stock: 50.00  
[2026-07-02 07:52:33] production.INFO: Quantity deducted: 4  
[2026-07-02 07:52:33] production.INFO: New stock: 46  
[2026-07-02 07:52:33] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-07-02 07:52:33] production.INFO: Old stock: 5.00  
[2026-07-02 07:52:33] production.INFO: Quantity deducted: 1  
[2026-07-02 07:52:33] production.INFO: New stock: 4  
[2026-07-02 07:52:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782971552757"} 
[2026-07-02 07:55:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782971711973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":5,"subtotal":5000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"107.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T18:23:49.000000Z","brand":null,"category":null}}],"payment_method":"airtel_money"}} 
[2026-07-02 07:55:13] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-02 07:55:13] production.INFO: Old stock: 107.00  
[2026-07-02 07:55:13] production.INFO: Quantity deducted: 5  
[2026-07-02 07:55:13] production.INFO: New stock: 102  
[2026-07-02 07:55:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782971711973"} 
[2026-07-02 08:46:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782974763737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Ashwaganda","sku":"1259","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":82,"name":"Ashwaganda","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"17.00","stock":"20.00","product_type":"Single","tax":null,"sku":"1259","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-23","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-16T14:41:28.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 08:46:04] production.INFO: Stock deduction for product: Ashwaganda  
[2026-07-02 08:46:04] production.INFO: Old stock: 17.00  
[2026-07-02 08:46:04] production.INFO: Quantity deducted: 1  
[2026-07-02 08:46:04] production.INFO: New stock: 16  
[2026-07-02 08:46:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782974763737"} 
[2026-07-02 09:51:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782978689658","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":926,"product_id":926,"name":"Parapain","sku":"PRD-00926","price":"400.00","selling_price":"400.00","purchase_price":"184.00","quantity":5,"subtotal":2000,"product":{"id":926,"name":"Parapain","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","last_purchase_price":"184.00","selling_price":"400.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00926","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:57:23.000000Z","updated_at":"2026-07-02T05:52:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 09:51:30] production.INFO: Stock deduction for product: Parapain  
[2026-07-02 09:51:30] production.INFO: Old stock: 46.00  
[2026-07-02 09:51:30] production.INFO: Quantity deducted: 5  
[2026-07-02 09:51:30] production.INFO: New stock: 41  
[2026-07-02 09:51:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782978689658"} 
[2026-07-02 10:32:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782981126679","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"31.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-01T18:24:29.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 10:32:08] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-02 10:32:08] production.INFO: Old stock: 31.00  
[2026-07-02 10:32:08] production.INFO: Quantity deducted: 1  
[2026-07-02 10:32:08] production.INFO: New stock: 30  
[2026-07-02 10:32:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782981126679"} 
[2026-07-02 10:43:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782981822140","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"56.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T12:10:05.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 10:43:42] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-02 10:43:42] production.INFO: Old stock: 56.00  
[2026-07-02 10:43:42] production.INFO: Quantity deducted: 1  
[2026-07-02 10:43:42] production.INFO: New stock: 55  
[2026-07-02 10:43:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782981822140"} 
[2026-07-02 11:01:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782982885608","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":603,"product_id":603,"name":"Omeprazole Capules 20mg( Zosec )","sku":"3240","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":603,"name":"Omeprazole Capules 20mg( Zosec )","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3240","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T17:49:41.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 11:01:27] production.INFO: Stock deduction for product: Omeprazole Capules 20mg( Zosec )  
[2026-07-02 11:01:27] production.INFO: Old stock: 1.00  
[2026-07-02 11:01:27] production.INFO: Quantity deducted: 1  
[2026-07-02 11:01:27] production.INFO: New stock: 0  
[2026-07-02 11:01:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782982885608"} 
[2026-07-02 11:27:12] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1782984432923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"13.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-17T10:19:49.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-17T10:19:49.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"105.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T16:58:04.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"43.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-16T16:48:56.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"18.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T14:25:00.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"108.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-01T15:23:11.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 11:27:12] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-07-02 11:27:12] production.INFO: Old stock: 13.00  
[2026-07-02 11:27:12] production.INFO: Quantity deducted: 1  
[2026-07-02 11:27:12] production.INFO: New stock: 12  
[2026-07-02 11:27:12] production.INFO: Stock deduction for product: Water for Injection  
[2026-07-02 11:27:12] production.INFO: Old stock: 19.00  
[2026-07-02 11:27:12] production.INFO: Quantity deducted: 1  
[2026-07-02 11:27:12] production.INFO: New stock: 18  
[2026-07-02 11:27:12] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-02 11:27:12] production.INFO: Old stock: 105.00  
[2026-07-02 11:27:12] production.INFO: Quantity deducted: 1  
[2026-07-02 11:27:12] production.INFO: New stock: 104  
[2026-07-02 11:27:12] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-07-02 11:27:12] production.INFO: Old stock: 43.00  
[2026-07-02 11:27:12] production.INFO: Quantity deducted: 1  
[2026-07-02 11:27:12] production.INFO: New stock: 42  
[2026-07-02 11:27:12] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-02 11:27:12] production.INFO: Old stock: 18.00  
[2026-07-02 11:27:12] production.INFO: Quantity deducted: 1  
[2026-07-02 11:27:12] production.INFO: New stock: 17  
[2026-07-02 11:27:12] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-02 11:27:12] production.INFO: Old stock: 108.00  
[2026-07-02 11:27:12] production.INFO: Quantity deducted: 1  
[2026-07-02 11:27:12] production.INFO: New stock: 107  
[2026-07-02 11:27:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782984432923"} 
[2026-07-02 12:07:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782986853569","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"14.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-28T15:29:34.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 12:07:35] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-07-02 12:07:35] production.INFO: Old stock: 14.00  
[2026-07-02 12:07:35] production.INFO: Quantity deducted: 1  
[2026-07-02 12:07:35] production.INFO: New stock: 13  
[2026-07-02 12:07:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782986853569"} 
[2026-07-02 12:46:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1782989207569","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"6.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-01T17:48:32.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 12:46:47] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-02 12:46:47] production.INFO: Old stock: 6.00  
[2026-07-02 12:46:47] production.INFO: Quantity deducted: 1  
[2026-07-02 12:46:47] production.INFO: New stock: 5  
[2026-07-02 12:46:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782989207569"} 
[2026-07-02 13:00:44] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782990043877","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":62,"product_id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","sku":"0675","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":2,"subtotal":3000,"product":{"id":62,"name":"AMLODIPINE TABLET 10MG-ZAAR-10","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"32.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0675","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-25T15:05:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"84.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-01T16:02:28.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 13:00:45] production.INFO: Stock deduction for product: AMLODIPINE TABLET 10MG-ZAAR-10  
[2026-07-02 13:00:45] production.INFO: Old stock: 32.00  
[2026-07-02 13:00:45] production.INFO: Quantity deducted: 2  
[2026-07-02 13:00:45] production.INFO: New stock: 30  
[2026-07-02 13:00:45] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-02 13:00:45] production.INFO: Old stock: 84.00  
[2026-07-02 13:00:45] production.INFO: Quantity deducted: 2  
[2026-07-02 13:00:45] production.INFO: New stock: 82  
[2026-07-02 13:00:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782990043877"} 
[2026-07-02 13:10:33] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782990633195","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":644,"product_id":644,"name":"POLYGEL SUSPENSION 200ML","sku":"3281","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":644,"name":"POLYGEL SUSPENSION 200ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-11T07:22:49.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":460,"product_id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","sku":"3097","price":"4500.00","selling_price":"4500.00","purchase_price":"1800.00","quantity":1,"subtotal":4500,"product":{"id":460,"name":"IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"10","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"4.00","stock":"8.00","product_type":"Single","tax":null,"sku":"3097","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-21T09:24:49.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":510,"product_id":510,"name":"Liquid Paraffin","sku":"3147","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":510,"name":"Liquid Paraffin","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"3147","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-14","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-24T09:16:13.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-02 13:10:33] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 200ML  
[2026-07-02 13:10:33] production.INFO: Old stock: 7.00  
[2026-07-02 13:10:33] production.INFO: Quantity deducted: 1  
[2026-07-02 13:10:33] production.INFO: New stock: 6  
[2026-07-02 13:10:33] production.INFO: Stock deduction for product: IBUPAR SUSP. (Ibuprofen + Paracetamol), 60ml  
[2026-07-02 13:10:33] production.INFO: Old stock: 4.00  
[2026-07-02 13:10:33] production.INFO: Quantity deducted: 1  
[2026-07-02 13:10:33] production.INFO: New stock: 3  
[2026-07-02 13:10:33] production.INFO: Stock deduction for product: Liquid Paraffin  
[2026-07-02 13:10:33] production.INFO: Old stock: 6.00  
[2026-07-02 13:10:33] production.INFO: Quantity deducted: 1  
[2026-07-02 13:10:33] production.INFO: New stock: 5  
[2026-07-02 13:10:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782990633195"} 
[2026-07-02 13:44:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1782992644931","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"7.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-28T11:43:44.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"97.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T18:23:49.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":882,"product_id":882,"name":"Ambcet","sku":"PRD-00882","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":882,"name":"Ambcet","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00882","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-20","created_at":"2026-05-20T05:16:10.000000Z","updated_at":"2026-06-26T17:06:16.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-02 13:44:06] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-07-02 13:44:06] production.INFO: Old stock: 7.00  
[2026-07-02 13:44:06] production.INFO: Quantity deducted: 1  
[2026-07-02 13:44:06] production.INFO: New stock: 6  
[2026-07-02 13:44:06] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-02 13:44:06] production.INFO: Old stock: 97.00  
[2026-07-02 13:44:06] production.INFO: Quantity deducted: 1  
[2026-07-02 13:44:06] production.INFO: New stock: 96  
[2026-07-02 13:44:06] production.INFO: Stock deduction for product: Ambcet  
[2026-07-02 13:44:06] production.INFO: Old stock: 6.00  
[2026-07-02 13:44:06] production.INFO: Quantity deducted: 1  
[2026-07-02 13:44:06] production.INFO: New stock: 5  
[2026-07-02 13:44:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782992644931"} 
[2026-07-02 14:31:30] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1782995489368","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"104.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T15:53:06.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":464,"product_id":464,"name":"IBUT-200 (Ibuprofen 200mg)","sku":"3101","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":1,"subtotal":500,"product":{"id":464,"name":"IBUT-200 (Ibuprofen 200mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"21.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3101","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-19T08:11:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 14:31:30] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-02 14:31:30] production.INFO: Old stock: 104.00  
[2026-07-02 14:31:30] production.INFO: Quantity deducted: 1  
[2026-07-02 14:31:30] production.INFO: New stock: 103  
[2026-07-02 14:31:30] production.INFO: Stock deduction for product: IBUT-200 (Ibuprofen 200mg)  
[2026-07-02 14:31:30] production.INFO: Old stock: 21.00  
[2026-07-02 14:31:30] production.INFO: Quantity deducted: 1  
[2026-07-02 14:31:30] production.INFO: New stock: 20  
[2026-07-02 14:31:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1782995489368"} 
[2026-07-02 16:07:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783001263682","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"20.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T08:29:57.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 16:07:45] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-02 16:07:45] production.INFO: Old stock: 20.00  
[2026-07-02 16:07:45] production.INFO: Quantity deducted: 1  
[2026-07-02 16:07:45] production.INFO: New stock: 19  
[2026-07-02 16:07:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783001263682"} 
[2026-07-02 16:16:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783001777816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"115.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T15:20:17.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 16:16:18] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-02 16:16:18] production.INFO: Old stock: 115.00  
[2026-07-02 16:16:18] production.INFO: Quantity deducted: 1  
[2026-07-02 16:16:18] production.INFO: New stock: 114  
[2026-07-02 16:16:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783001777816"} 
[2026-07-02 16:25:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783002331038","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":387,"product_id":387,"name":"FUNBACT SOAP YELLOW (MOISTURISING) 75GM","sku":"3024","price":"5000.00","selling_price":"5000.00","purchase_price":"2231.00","quantity":1,"subtotal":5000,"product":{"id":387,"name":"FUNBACT SOAP YELLOW (MOISTURISING) 75GM","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"2231.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"21.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3024","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T13:06:49.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"103.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T12:31:30.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-02 16:25:31] production.INFO: Stock deduction for product: FUNBACT SOAP YELLOW (MOISTURISING) 75GM  
[2026-07-02 16:25:31] production.INFO: Old stock: 21.00  
[2026-07-02 16:25:31] production.INFO: Quantity deducted: 1  
[2026-07-02 16:25:31] production.INFO: New stock: 20  
[2026-07-02 16:25:31] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-02 16:25:31] production.INFO: Old stock: 103.00  
[2026-07-02 16:25:31] production.INFO: Quantity deducted: 1  
[2026-07-02 16:25:31] production.INFO: New stock: 102  
[2026-07-02 16:25:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783002331038"} 
[2026-07-02 16:32:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783002768756","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"13.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T08:24:34.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 16:32:49] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-07-02 16:32:49] production.INFO: Old stock: 13.00  
[2026-07-02 16:32:49] production.INFO: Quantity deducted: 1  
[2026-07-02 16:32:49] production.INFO: New stock: 12  
[2026-07-02 16:32:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783002768756"} 
[2026-07-02 17:14:15] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783005256259","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-02T09:27:12.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T09:27:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":2,"subtotal":1000,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"42.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-02T09:27:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"107.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-02T09:27:12.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-02 17:14:15] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-07-02 17:14:15] production.INFO: Old stock: 12.00  
[2026-07-02 17:14:15] production.INFO: Quantity deducted: 1  
[2026-07-02 17:14:15] production.INFO: New stock: 11  
[2026-07-02 17:14:15] production.INFO: Stock deduction for product: Water for Injection  
[2026-07-02 17:14:15] production.INFO: Old stock: 18.00  
[2026-07-02 17:14:15] production.INFO: Quantity deducted: 1  
[2026-07-02 17:14:15] production.INFO: New stock: 17  
[2026-07-02 17:14:15] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-07-02 17:14:15] production.INFO: Old stock: 42.00  
[2026-07-02 17:14:15] production.INFO: Quantity deducted: 2  
[2026-07-02 17:14:15] production.INFO: New stock: 40  
[2026-07-02 17:14:15] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-02 17:14:15] production.INFO: Old stock: 107.00  
[2026-07-02 17:14:15] production.INFO: Quantity deducted: 1  
[2026-07-02 17:14:15] production.INFO: New stock: 106  
[2026-07-02 17:14:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783005256259"} 
[2026-07-02 17:25:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783005958352","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"173.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T16:48:14.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 17:25:58] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-02 17:25:58] production.INFO: Old stock: 173.00  
[2026-07-02 17:25:58] production.INFO: Quantity deducted: 2  
[2026-07-02 17:25:58] production.INFO: New stock: 171  
[2026-07-02 17:25:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783005958352"} 
[2026-07-02 17:39:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783006753941","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"28.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-01T14:25:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 17:39:14] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-02 17:39:14] production.INFO: Old stock: 28.00  
[2026-07-02 17:39:14] production.INFO: Quantity deducted: 1  
[2026-07-02 17:39:14] production.INFO: New stock: 27  
[2026-07-02 17:39:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783006753941"} 
[2026-07-02 18:02:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783008176127","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":5,"subtotal":1500,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"271.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T06:51:17.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 18:02:56] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-02 18:02:56] production.INFO: Old stock: 271.00  
[2026-07-02 18:02:56] production.INFO: Quantity deducted: 5  
[2026-07-02 18:02:56] production.INFO: New stock: 266  
[2026-07-02 18:02:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783008176127"} 
[2026-07-02 18:04:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783008293351","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"9.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-29T10:08:25.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 18:04:53] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-07-02 18:04:53] production.INFO: Old stock: 9.00  
[2026-07-02 18:04:53] production.INFO: Quantity deducted: 1  
[2026-07-02 18:04:53] production.INFO: New stock: 8  
[2026-07-02 18:04:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783008293351"} 
[2026-07-02 18:05:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783008302463","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"160.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-19T16:44:19.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 18:05:02] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-02 18:05:02] production.INFO: Old stock: 160.00  
[2026-07-02 18:05:02] production.INFO: Quantity deducted: 1  
[2026-07-02 18:05:02] production.INFO: New stock: 159  
[2026-07-02 18:05:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783008302463"} 
[2026-07-02 18:09:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783008587214","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":185,"product_id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","sku":"0655","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0655","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-20T10:18:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":624,"product_id":624,"name":"Pantoprazole (Pantin 40mg)","sku":"3261","price":"6000.00","selling_price":"6000.00","purchase_price":"2900.00","quantity":1,"subtotal":6000,"product":{"id":624,"name":"Pantoprazole (Pantin 40mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"2900.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3261","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-04-11T08:18:43.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-02 18:09:48] production.INFO: Stock deduction for product: CLAMOXIN 625MG Tablets (AUGMENTIN)  
[2026-07-02 18:09:48] production.INFO: Old stock: 4.00  
[2026-07-02 18:09:48] production.INFO: Quantity deducted: 1  
[2026-07-02 18:09:48] production.INFO: New stock: 3  
[2026-07-02 18:09:48] production.INFO: Stock deduction for product: Pantoprazole (Pantin 40mg)  
[2026-07-02 18:09:48] production.INFO: Old stock: 8.00  
[2026-07-02 18:09:48] production.INFO: Quantity deducted: 1  
[2026-07-02 18:09:48] production.INFO: New stock: 7  
[2026-07-02 18:09:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783008587214"} 
[2026-07-02 18:18:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783009097508","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"164.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T18:00:53.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-02 18:18:18] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-02 18:18:18] production.INFO: Old stock: 164.00  
[2026-07-02 18:18:18] production.INFO: Quantity deducted: 5  
[2026-07-02 18:18:18] production.INFO: New stock: 159  
[2026-07-02 18:18:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783009097508"} 
[2026-07-02 18:20:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783009231875","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"171.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-02T15:25:58.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 18:20:32] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-02 18:20:32] production.INFO: Old stock: 171.00  
[2026-07-02 18:20:32] production.INFO: Quantity deducted: 2  
[2026-07-02 18:20:32] production.INFO: New stock: 169  
[2026-07-02 18:20:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783009231875"} 
[2026-07-02 18:29:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783009787609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"27.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-02T15:39:14.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 18:29:48] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-02 18:29:48] production.INFO: Old stock: 27.00  
[2026-07-02 18:29:48] production.INFO: Quantity deducted: 1  
[2026-07-02 18:29:48] production.INFO: New stock: 26  
[2026-07-02 18:29:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783009787609"} 
[2026-07-02 19:00:56] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1783011656882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":403,"product_id":403,"name":"Gaviscon Double Action Tablets","sku":"3040","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":2,"subtotal":30000,"product":{"id":403,"name":"Gaviscon Double Action Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":null,"supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3040","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T08:17:46.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T18:00:07.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":521,"product_id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","sku":"3158","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"20.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3158","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-03T12:31:31.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-06-26T12:16:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":2,"subtotal":24000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"21.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T14:46:28.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 19:00:56] production.INFO: Stock deduction for product: Gaviscon Double Action Tablets  
[2026-07-02 19:00:56] production.INFO: Old stock: 10.00  
[2026-07-02 19:00:56] production.INFO: Quantity deducted: 2  
[2026-07-02 19:00:56] production.INFO: New stock: 8  
[2026-07-02 19:00:56] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-02 19:00:56] production.INFO: Old stock: 14.00  
[2026-07-02 19:00:56] production.INFO: Quantity deducted: 1  
[2026-07-02 19:00:56] production.INFO: New stock: 13  
[2026-07-02 19:00:56] production.INFO: Stock deduction for product: LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)  
[2026-07-02 19:00:56] production.INFO: Old stock: 20.00  
[2026-07-02 19:00:56] production.INFO: Quantity deducted: 1  
[2026-07-02 19:00:56] production.INFO: New stock: 19  
[2026-07-02 19:00:56] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-07-02 19:00:56] production.INFO: Old stock: 8.00  
[2026-07-02 19:00:56] production.INFO: Quantity deducted: 1  
[2026-07-02 19:00:56] production.INFO: New stock: 7  
[2026-07-02 19:00:56] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-07-02 19:00:56] production.INFO: Old stock: 21.00  
[2026-07-02 19:00:56] production.INFO: Quantity deducted: 2  
[2026-07-02 19:00:56] production.INFO: New stock: 19  
[2026-07-02 19:00:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783011656882"} 
[2026-07-02 19:08:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783012122080","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":3,"subtotal":600,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"303.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-01T13:59:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 19:08:42] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-02 19:08:42] production.INFO: Old stock: 303.00  
[2026-07-02 19:08:42] production.INFO: Quantity deducted: 3  
[2026-07-02 19:08:42] production.INFO: New stock: 300  
[2026-07-02 19:08:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783012122080"} 
[2026-07-02 19:12:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783012366736","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"30.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-02T08:32:08.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-27T10:19:09.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-02 19:12:47] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-02 19:12:47] production.INFO: Old stock: 30.00  
[2026-07-02 19:12:47] production.INFO: Quantity deducted: 1  
[2026-07-02 19:12:47] production.INFO: New stock: 29  
[2026-07-02 19:12:47] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-02 19:12:47] production.INFO: Old stock: 7.00  
[2026-07-02 19:12:47] production.INFO: Quantity deducted: 1  
[2026-07-02 19:12:47] production.INFO: New stock: 6  
[2026-07-02 19:12:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783012366736"} 
[2026-07-02 19:22:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783012952637","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"84.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-22T09:03:08.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 19:22:33] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-07-02 19:22:33] production.INFO: Old stock: 84.00  
[2026-07-02 19:22:33] production.INFO: Quantity deducted: 1  
[2026-07-02 19:22:33] production.INFO: New stock: 83  
[2026-07-02 19:22:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783012952637"} 
[2026-07-02 19:30:57] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783013458115","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":824,"product_id":824,"name":"Nifedipine Denk 20mg","sku":"PRD-00824","price":"10000.00","selling_price":"10000.00","purchase_price":"4900.00","quantity":1,"subtotal":10000,"product":{"id":824,"name":"Nifedipine Denk 20mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4900.00","last_purchase_price":"4900.00","selling_price":"10000.00","current_stock":"18.00","stock":"22.00","product_type":"Single","tax":null,"sku":"PRD-00824","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":"2026-03-24","created_at":"2026-03-24T08:48:47.000000Z","updated_at":"2026-06-21T15:58:38.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"106.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-02T15:14:15.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-02 19:30:57] production.INFO: Stock deduction for product: Nifedipine Denk 20mg  
[2026-07-02 19:30:57] production.INFO: Old stock: 18.00  
[2026-07-02 19:30:57] production.INFO: Quantity deducted: 1  
[2026-07-02 19:30:57] production.INFO: New stock: 17  
[2026-07-02 19:30:57] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-02 19:30:57] production.INFO: Old stock: 106.00  
[2026-07-02 19:30:57] production.INFO: Quantity deducted: 1  
[2026-07-02 19:30:57] production.INFO: New stock: 105  
[2026-07-02 19:30:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783013458115"} 
[2026-07-02 19:32:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783013561875","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":202,"product_id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","sku":"0763","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"4.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0763","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-25T17:03:40.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 19:32:42] production.INFO: Stock deduction for product: DACOF PEADEATRIC SYRUP, 100ml  
[2026-07-02 19:32:42] production.INFO: Old stock: 4.00  
[2026-07-02 19:32:42] production.INFO: Quantity deducted: 1  
[2026-07-02 19:32:42] production.INFO: New stock: 3  
[2026-07-02 19:32:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783013561875"} 
[2026-07-02 19:34:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783013646394","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"26.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-02T16:29:48.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 19:34:06] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-02 19:34:06] production.INFO: Old stock: 26.00  
[2026-07-02 19:34:06] production.INFO: Quantity deducted: 1  
[2026-07-02 19:34:06] production.INFO: New stock: 25  
[2026-07-02 19:34:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783013646394"} 
[2026-07-02 19:43:24] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783014204184","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T09:14:42.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-06-16T14:44:32.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 19:43:24] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-07-02 19:43:24] production.INFO: Old stock: 7.00  
[2026-07-02 19:43:24] production.INFO: Quantity deducted: 1  
[2026-07-02 19:43:24] production.INFO: New stock: 6  
[2026-07-02 19:43:24] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-07-02 19:43:24] production.INFO: Old stock: 5.00  
[2026-07-02 19:43:24] production.INFO: Quantity deducted: 1  
[2026-07-02 19:43:24] production.INFO: New stock: 4  
[2026-07-02 19:43:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783014204184"} 
[2026-07-02 19:47:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783014423239","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":464,"product_id":464,"name":"IBUT-200 (Ibuprofen 200mg)","sku":"3101","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":1,"subtotal":500,"product":{"id":464,"name":"IBUT-200 (Ibuprofen 200mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3101","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-02T12:31:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-02 19:47:04] production.INFO: Stock deduction for product: IBUT-200 (Ibuprofen 200mg)  
[2026-07-02 19:47:04] production.INFO: Old stock: 20.00  
[2026-07-02 19:47:04] production.INFO: Quantity deducted: 1  
[2026-07-02 19:47:04] production.INFO: New stock: 19  
[2026-07-02 19:47:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783014423239"} 
[2026-07-02 20:06:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783015560571","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"6000.00","selling_price":"6000.00","purchase_price":"2600.00","quantity":1,"subtotal":6000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2600.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"40.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-29T12:26:09.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"49.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-30T05:50:04.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 20:06:00] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-02 20:06:00] production.INFO: Old stock: 40.00  
[2026-07-02 20:06:00] production.INFO: Quantity deducted: 1  
[2026-07-02 20:06:00] production.INFO: New stock: 39  
[2026-07-02 20:06:00] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-02 20:06:00] production.INFO: Old stock: 49.00  
[2026-07-02 20:06:00] production.INFO: Quantity deducted: 1  
[2026-07-02 20:06:00] production.INFO: New stock: 48  
[2026-07-02 20:06:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783015560571"} 
[2026-07-02 20:52:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783018342761","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":218,"product_id":218,"name":"DAWAVATE (Betamethasone Cream), 15g","sku":"0704","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":218,"name":"DAWAVATE (Betamethasone Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"8.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0704","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-29T10:26:04.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-02 20:52:22] production.INFO: Stock deduction for product: DAWAVATE (Betamethasone Cream), 15g  
[2026-07-02 20:52:22] production.INFO: Old stock: 8.00  
[2026-07-02 20:52:22] production.INFO: Quantity deducted: 1  
[2026-07-02 20:52:22] production.INFO: New stock: 7  
[2026-07-02 20:52:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783018342761"} 
[2026-07-02 21:32:10] production.INFO: Stock Adjustment - Initial State {"product_id":"837","previous_quantity":"1.00","previous_selling_price":"25000.00","validated_data":{"product_id":"837","adjustment_type":"add","quantity":"6","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 21:32:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":837,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 21:34:44] production.INFO: Stock Adjustment - Initial State {"product_id":"667","previous_quantity":"1.00","previous_selling_price":"18000.00","validated_data":{"product_id":"667","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"22500.00","new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 21:34:44] production.INFO: Stock Adjustment - After Quantity Save {"product_id":667,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 21:35:08] production.INFO: Stock Adjustment - Initial State {"product_id":"666","previous_quantity":"4.00","previous_selling_price":"11000.00","validated_data":{"product_id":"666","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"11500.00","new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 21:35:08] production.INFO: Stock Adjustment - After Quantity Save {"product_id":666,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 21:39:41] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Go Cough Herbal Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"3450.00","selling_price":"7000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 21:39:41] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Go Cough Herbal Syrup","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3450.00","selling_price":"7000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 21:39:41] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Go Cough Herbal Syrup","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3450.00","selling_price":"7000.00","sku":"PRD-00928","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"3450.00","last_purchase_date":"2026-07-02 21:39:41"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 21:39:41] production.INFO: Product Store - Product Created {"product_id":928,"product_name":"Go Cough Herbal Syrup","product_sku":"PRD-00928"} 
[2026-07-02 21:49:36] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Go Cough Herbal Syrup 100ml","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1650.00","selling_price":"3500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 21:49:36] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Go Cough Herbal Syrup 100ml","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 21:49:36] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Go Cough Herbal Syrup 100ml","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":"PRD-00929","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1650.00","last_purchase_date":"2026-07-02 21:49:36"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 21:49:36] production.INFO: Product Store - Product Created {"product_id":929,"product_name":"Go Cough Herbal Syrup 100ml","product_sku":"PRD-00929"} 
[2026-07-02 21:52:00] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Peptocid Herbal Antacid Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":"24","purchase_price":"2650.00","selling_price":"5500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 21:52:00] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Peptocid Herbal Antacid Syrup","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2650.00","selling_price":"5500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 21:52:00] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Peptocid Herbal Antacid Syrup","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2650.00","selling_price":"5500.00","sku":"PRD-00930","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"2650.00","last_purchase_date":"2026-07-02 21:52:00"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 21:52:00] production.INFO: Product Store - Product Created {"product_id":930,"product_name":"Peptocid Herbal Antacid Syrup","product_sku":"PRD-00930"} 
[2026-07-02 21:53:56] production.INFO: Stock Adjustment - Initial State {"product_id":"658","previous_quantity":"39.00","previous_selling_price":"6000.00","validated_data":{"product_id":"658","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"8000.00","new_purchase_price":"3950.00","new_expiry_date":"2026-07-02"}} 
[2026-07-02 21:53:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":658,"new_quantity":59.0,"current_stock":59.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 21:55:20] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"D Tuss Herbal Cough Syrup 100ml","sku":null,"category_id":"7","brand_id":"8","unit_id":"24","purchase_price":"3950.00","selling_price":"8000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 21:55:20] production.INFO: Product Store - Validation Success {"validated_data":{"name":"D Tuss Herbal Cough Syrup 100ml","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3950.00","selling_price":"8000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 21:55:20] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"D Tuss Herbal Cough Syrup 100ml","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3950.00","selling_price":"8000.00","sku":"PRD-00931","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"3950.00","last_purchase_date":"2026-07-02 21:55:20"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 21:55:20] production.INFO: Product Store - Product Created {"product_id":931,"product_name":"D Tuss Herbal Cough Syrup 100ml","product_sku":"PRD-00931"} 
[2026-07-02 21:56:41] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"First Aid Kits (Medium)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"85000.00","selling_price":"170000.00","description":null,"purchase_quantity":"1.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 21:56:41] production.INFO: Product Store - Validation Success {"validated_data":{"name":"First Aid Kits (Medium)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"85000.00","selling_price":"170000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 21:56:41] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"First Aid Kits (Medium)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"85000.00","selling_price":"170000.00","sku":"PRD-00932","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"1.00","last_purchase_price":"85000.00","last_purchase_date":"2026-07-02 21:56:41"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 21:56:41] production.INFO: Product Store - Product Created {"product_id":932,"product_name":"First Aid Kits (Medium)","product_sku":"PRD-00932"} 
[2026-07-02 21:59:37] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Pip Off","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"3500.00","selling_price":"7000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 21:59:37] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Pip Off","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 21:59:37] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Pip Off","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":"PRD-00933","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"3500.00","last_purchase_date":"2026-07-02 21:59:37"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 21:59:37] production.INFO: Product Store - Product Created {"product_id":933,"product_name":"Pip Off","product_sku":"PRD-00933"} 
[2026-07-02 22:01:39] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Cetrizine Syrup (Oncet)","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"2350.00","selling_price":"5000.00","description":null,"purchase_quantity":"5.00","alert_quantity":null,"expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:01:39] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Cetrizine Syrup (Oncet)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","selling_price":"5000.00","sku":null,"alert_quantity":null,"expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:01:39] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Cetrizine Syrup (Oncet)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","selling_price":"5000.00","sku":"PRD-00934","alert_quantity":null,"expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"2350.00","last_purchase_date":"2026-07-02 22:01:39"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:01:39] production.INFO: Product Store - Product Created {"product_id":934,"product_name":"Cetrizine Syrup (Oncet)","product_sku":"PRD-00934"} 
[2026-07-02 22:02:25] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Tuxiril Syrup\t100ml","sku":null,"category_id":"7","brand_id":"8","unit_id":"24","purchase_price":"2950.00","selling_price":"6000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:02:25] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Tuxiril Syrup\t100ml","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2950.00","selling_price":"6000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:02:25] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Tuxiril Syrup\t100ml","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2950.00","selling_price":"6000.00","sku":"PRD-00935","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"2950.00","last_purchase_date":"2026-07-02 22:02:25"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:02:25] production.INFO: Product Store - Product Created {"product_id":935,"product_name":"Tuxiril Syrup\t100ml","product_sku":"PRD-00935"} 
[2026-07-02 22:06:14] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Tetra Skin Oint","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1650.00","selling_price":"3500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:06:14] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Tetra Skin Oint","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:06:14] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Tetra Skin Oint","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":"PRD-00936","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1650.00","last_purchase_date":"2026-07-02 22:06:14"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:06:14] production.INFO: Product Store - Product Created {"product_id":936,"product_name":"Tetra Skin Oint","product_sku":"PRD-00936"} 
[2026-07-02 22:09:15] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"OZ Tablet","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2500.00","selling_price":"5000.00","description":null,"purchase_quantity":"50.00","alert_quantity":"10","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:09:15] production.INFO: Product Store - Validation Success {"validated_data":{"name":"OZ Tablet","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","selling_price":"5000.00","sku":null,"alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"50.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:09:15] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"OZ Tablet","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","selling_price":"5000.00","sku":"PRD-00937","alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"50.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"50.00","last_purchase_price":"2500.00","last_purchase_date":"2026-07-02 22:09:15"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:09:15] production.INFO: Product Store - Product Created {"product_id":937,"product_name":"OZ Tablet","product_sku":"PRD-00937"} 
[2026-07-02 22:10:54] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Clotrimazole Cream (Canben)","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:10:54] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Clotrimazole Cream (Canben)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:10:54] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Clotrimazole Cream (Canben)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00938","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-02 22:10:54"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:10:54] production.INFO: Product Store - Product Created {"product_id":938,"product_name":"Clotrimazole Cream (Canben)","product_sku":"PRD-00938"} 
[2026-07-02 22:12:35] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Betamethasone Oint (Elyvate)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1950.00","selling_price":"4000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:12:35] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Betamethasone Oint (Elyvate)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","selling_price":"4000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:12:35] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Betamethasone Oint (Elyvate)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","selling_price":"4000.00","sku":"PRD-00939","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1950.00","last_purchase_date":"2026-07-02 22:12:35"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:12:35] production.INFO: Product Store - Product Created {"product_id":939,"product_name":"Betamethasone Oint (Elyvate)","product_sku":"PRD-00939"} 
[2026-07-02 22:13:53] production.INFO: Stock Adjustment - Initial State {"product_id":"393","previous_quantity":"5.00","previous_selling_price":"5500.00","validated_data":{"product_id":"393","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:13:53] production.INFO: Stock Adjustment - After Quantity Save {"product_id":393,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:15:21] production.INFO: Stock Adjustment - Initial State {"product_id":"466","previous_quantity":"13.00","previous_selling_price":"2500.00","validated_data":{"product_id":"466","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:15:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":466,"new_quantity":23.0,"current_stock":23.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:16:21] production.INFO: Stock Adjustment - Initial State {"product_id":"766","previous_quantity":"6.00","previous_selling_price":"4000.00","validated_data":{"product_id":"766","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:16:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":766,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:17:37] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Mepyramine Cream (Elystamin)","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:17:37] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Mepyramine Cream (Elystamin)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:17:37] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Mepyramine Cream (Elystamin)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00940","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-02 22:17:37"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:17:37] production.INFO: Product Store - Product Created {"product_id":940,"product_name":"Mepyramine Cream (Elystamin)","product_sku":"PRD-00940"} 
[2026-07-02 22:19:08] production.INFO: Stock Adjustment - Initial State {"product_id":"898","previous_quantity":"1.00","previous_selling_price":"4000.00","validated_data":{"product_id":"898","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:19:08] production.INFO: Stock Adjustment - After Quantity Save {"product_id":898,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:20:21] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Hidderm CH Cream","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"4250.00","selling_price":"8500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:20:21] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Hidderm CH Cream","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","selling_price":"8500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:20:21] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Hidderm CH Cream","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","selling_price":"8500.00","sku":"PRD-00941","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"4250.00","last_purchase_date":"2026-07-02 22:20:21"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:20:21] production.INFO: Product Store - Product Created {"product_id":941,"product_name":"Hidderm CH Cream","product_sku":"PRD-00941"} 
[2026-07-02 22:22:20] production.INFO: Stock Adjustment - Initial State {"product_id":"118","previous_quantity":"5.00","previous_selling_price":"2500.00","validated_data":{"product_id":"118","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":"1850.00","new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:22:20] production.INFO: Stock Adjustment - After Quantity Save {"product_id":118,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:24:00] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Hydrocortisone Cream (Cortileb)","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"1950.00","selling_price":"4000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:24:00] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Hydrocortisone Cream (Cortileb)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","selling_price":"4000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:24:00] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Hydrocortisone Cream (Cortileb)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","selling_price":"4000.00","sku":"PRD-00942","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1950.00","last_purchase_date":"2026-07-02 22:24:00"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:24:00] production.INFO: Product Store - Product Created {"product_id":942,"product_name":"Hydrocortisone Cream (Cortileb)","product_sku":"PRD-00942"} 
[2026-07-02 22:25:24] production.INFO: Stock Adjustment - Initial State {"product_id":"177","previous_quantity":"0.00","previous_selling_price":"2500.00","validated_data":{"product_id":"177","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:25:24] production.INFO: Stock Adjustment - After Quantity Save {"product_id":177,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:26:19] production.INFO: Stock Adjustment - Initial State {"product_id":"177","previous_quantity":"5.00","previous_selling_price":"2500.00","validated_data":{"product_id":"177","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:26:19] production.INFO: Stock Adjustment - After Quantity Save {"product_id":177,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:28:11] production.INFO: Stock Adjustment - Initial State {"product_id":"768","previous_quantity":"5.00","previous_selling_price":"1000.00","validated_data":{"product_id":"768","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":"1750.00","new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:28:11] production.INFO: Stock Adjustment - After Quantity Save {"product_id":768,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:32:02] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Fluzomex Inhaler","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"17500.00","selling_price":"35000.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:32:02] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Fluzomex Inhaler","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"17500.00","selling_price":"35000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:32:02] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Fluzomex Inhaler","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"17500.00","selling_price":"35000.00","sku":"PRD-00943","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"17500.00","last_purchase_date":"2026-07-02 22:32:02"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:32:02] production.INFO: Product Store - Product Created {"product_id":943,"product_name":"Fluzomex Inhaler","product_sku":"PRD-00943"} 
[2026-07-02 22:37:14] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Diclona DP","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"750.00","selling_price":"1500.00","description":null,"purchase_quantity":"20.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:37:14] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Diclona DP","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"750.00","selling_price":"1500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:37:14] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Diclona DP","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"750.00","selling_price":"1500.00","sku":"PRD-00944","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"20.00","last_purchase_price":"750.00","last_purchase_date":"2026-07-02 22:37:14"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:37:14] production.INFO: Product Store - Product Created {"product_id":944,"product_name":"Diclona DP","product_sku":"PRD-00944"} 
[2026-07-02 22:38:42] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Finmol Plus","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1750.00","selling_price":"3500.00","description":null,"purchase_quantity":"15.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:38:42] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Finmol Plus","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","selling_price":"3500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:38:42] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Finmol Plus","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","selling_price":"3500.00","sku":"PRD-00945","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"15.00","last_purchase_price":"1750.00","last_purchase_date":"2026-07-02 22:38:42"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:38:42] production.INFO: Product Store - Product Created {"product_id":945,"product_name":"Finmol Plus","product_sku":"PRD-00945"} 
[2026-07-02 22:40:12] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Moleben Tab","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3500.00","selling_price":"7000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:40:12] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Moleben Tab","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:40:12] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Moleben Tab","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":"PRD-00946","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3500.00","last_purchase_date":"2026-07-02 22:40:12"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:40:12] production.INFO: Product Store - Product Created {"product_id":946,"product_name":"Moleben Tab","product_sku":"PRD-00946"} 
[2026-07-02 22:41:48] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Clarithromycin 500mg Tab (Acem)","sku":null,"category_id":"7","brand_id":"8","unit_id":"23","purchase_price":"19000.00","selling_price":"38000.00","description":null,"purchase_quantity":"1.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:41:48] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Clarithromycin 500mg Tab (Acem)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"19000.00","selling_price":"38000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:41:48] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Clarithromycin 500mg Tab (Acem)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"19000.00","selling_price":"38000.00","sku":"PRD-00947","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"1.00","last_purchase_price":"19000.00","last_purchase_date":"2026-07-02 22:41:48"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:41:48] production.INFO: Product Store - Product Created {"product_id":947,"product_name":"Clarithromycin 500mg Tab (Acem)","product_sku":"PRD-00947"} 
[2026-07-02 22:43:00] production.INFO: Stock Adjustment - Initial State {"product_id":"631","previous_quantity":"19.00","previous_selling_price":"3000.00","validated_data":{"product_id":"631","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:43:00] production.INFO: Stock Adjustment - After Quantity Save {"product_id":631,"new_quantity":29.0,"current_stock":29.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:44:39] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Biotiva Probiotics Capsule","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4255.00","selling_price":"9000.00","description":null,"purchase_quantity":"1.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:44:39] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Biotiva Probiotics Capsule","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4255.00","selling_price":"9000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:44:39] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Biotiva Probiotics Capsule","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4255.00","selling_price":"9000.00","sku":"PRD-00948","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"1.00","last_purchase_price":"4255.00","last_purchase_date":"2026-07-02 22:44:39"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:44:39] production.INFO: Product Store - Product Created {"product_id":948,"product_name":"Biotiva Probiotics Capsule","product_sku":"PRD-00948"} 
[2026-07-02 22:46:22] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Osteo Plus Tab","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3850.00","selling_price":"9000.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:46:22] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Osteo Plus Tab","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3850.00","selling_price":"9000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:46:22] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Osteo Plus Tab","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3850.00","selling_price":"9000.00","sku":"PRD-00949","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"3850.00","last_purchase_date":"2026-07-02 22:46:22"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:46:22] production.INFO: Product Store - Product Created {"product_id":949,"product_name":"Osteo Plus Tab","product_sku":"PRD-00949"} 
[2026-07-02 22:50:05] production.INFO: Stock Adjustment - Initial State {"product_id":"616","previous_quantity":"1.00","previous_selling_price":"500.00","validated_data":{"product_id":"616","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"1000.00","new_purchase_price":"3890.00","new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:50:05] production.INFO: Stock Adjustment - After Quantity Save {"product_id":616,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:52:34] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Asomex 5mg","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"6500.00","selling_price":"13000.00","description":null,"purchase_quantity":"15.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:52:34] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Asomex 5mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:52:34] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Asomex 5mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":"PRD-00950","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"15.00","last_purchase_price":"6500.00","last_purchase_date":"2026-07-02 22:52:34"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:52:34] production.INFO: Product Store - Product Created {"product_id":950,"product_name":"Asomex 5mg","product_sku":"PRD-00950"} 
[2026-07-02 22:52:34] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PUR-20260702-623' for key 'purchases_reference_no_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: insert into `purchases` (`supplier_id`, `business_location`, `reference_no`, `purchase_date`, `status`, `payment_status`, `grand_total`, `created_by`, `updated_at`, `created_at`) values (1, EDUC Pharmacy (BL0001), PUR-20260702-623, 2026-07-02 22:52:34, received, due, 97500, 1, 2026-07-02 22:52:34, 2026-07-02 22:52:34))","error_code":"23000","error_file":"/home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/educ/app/Http/Controllers/ProductController.php(176): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/educ/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-02 22:52:52] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Asomex 5mg","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"6500.00","selling_price":"13000.00","description":null,"purchase_quantity":"15.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:52:52] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Asomex 5mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:52:52] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Asomex 5mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":"PRD-00951","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"15.00","last_purchase_price":"6500.00","last_purchase_date":"2026-07-02 22:52:52"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:52:52] production.INFO: Product Store - Product Created {"product_id":951,"product_name":"Asomex 5mg","product_sku":"PRD-00951"} 
[2026-07-02 22:55:19] production.INFO: Stock Adjustment - Initial State {"product_id":"502","previous_quantity":"0.00","previous_selling_price":"300.00","validated_data":{"product_id":"502","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":"3000.00","new_expiry_date":"2026-07-02"}} 
[2026-07-02 22:55:19] production.INFO: Stock Adjustment - After Quantity Save {"product_id":502,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 22:56:30] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Larycol CZ Loz Immune Booster","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3000.00","selling_price":"6000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:56:30] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Larycol CZ Loz Immune Booster","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","selling_price":"6000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:56:30] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Larycol CZ Loz Immune Booster","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","selling_price":"6000.00","sku":"PRD-00952","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3000.00","last_purchase_date":"2026-07-02 22:56:30"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:56:30] production.INFO: Product Store - Product Created {"product_id":952,"product_name":"Larycol CZ Loz Immune Booster","product_sku":"PRD-00952"} 
[2026-07-02 22:57:55] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Larycol Loz Antibacterial Action","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3000.00","selling_price":"6000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:57:55] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Larycol Loz Antibacterial Action","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","selling_price":"6000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:57:55] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Larycol Loz Antibacterial Action","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","selling_price":"6000.00","sku":"PRD-00953","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3000.00","last_purchase_date":"2026-07-02 22:57:55"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:57:55] production.INFO: Product Store - Product Created {"product_id":953,"product_name":"Larycol Loz Antibacterial Action","product_sku":"PRD-00953"} 
[2026-07-02 22:59:40] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Stopcold Med Lozenges","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3250.00","selling_price":"6500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 22:59:40] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Stopcold Med Lozenges","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"6500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 22:59:40] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Stopcold Med Lozenges","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"6500.00","sku":"PRD-00954","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3250.00","last_purchase_date":"2026-07-02 22:59:40"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 22:59:40] production.INFO: Product Store - Product Created {"product_id":954,"product_name":"Stopcold Med Lozenges","product_sku":"PRD-00954"} 
[2026-07-02 23:00:44] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Go Cough Med Lozenges","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3500.00","selling_price":"7000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:00:44] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Go Cough Med Lozenges","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:00:44] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Go Cough Med Lozenges","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":"PRD-00955","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"3500.00","last_purchase_date":"2026-07-02 23:00:44"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:00:44] production.INFO: Product Store - Product Created {"product_id":955,"product_name":"Go Cough Med Lozenges","product_sku":"PRD-00955"} 
[2026-07-02 23:01:47] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Xlykaa Extend","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3500.00","selling_price":"7000.00","description":null,"purchase_quantity":"4.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:01:47] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Xlykaa Extend","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"4.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:01:47] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Xlykaa Extend","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":"PRD-00956","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"4.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"4.00","last_purchase_price":"3500.00","last_purchase_date":"2026-07-02 23:01:47"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:01:47] production.INFO: Product Store - Product Created {"product_id":956,"product_name":"Xlykaa Extend","product_sku":"PRD-00956"} 
[2026-07-02 23:03:08] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Urin Container","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1287.00","selling_price":"2500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:03:08] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Urin Container","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1287.00","selling_price":"2500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:03:08] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Urin Container","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1287.00","selling_price":"2500.00","sku":"PRD-00957","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1287.00","last_purchase_date":"2026-07-02 23:03:08"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:03:08] production.INFO: Product Store - Product Created {"product_id":957,"product_name":"Urin Container","product_sku":"PRD-00957"} 
[2026-07-02 23:05:34] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Ibuplus Tab","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2500.00","selling_price":"5500.00","description":null,"purchase_quantity":"50.00","alert_quantity":"10.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:05:34] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ibuplus Tab","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","selling_price":"5500.00","sku":null,"alert_quantity":"10.00","expiry_date":null,"description":null,"purchase_quantity":"50.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:05:34] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ibuplus Tab","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","selling_price":"5500.00","sku":"PRD-00958","alert_quantity":"10.00","expiry_date":null,"description":null,"purchase_quantity":"50.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"50.00","last_purchase_price":"2500.00","last_purchase_date":"2026-07-02 23:05:34"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:05:34] production.INFO: Product Store - Product Created {"product_id":958,"product_name":"Ibuplus Tab","product_sku":"PRD-00958"} 
[2026-07-02 23:06:48] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Omeprazole Injection","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3500.00","selling_price":"7000.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:06:48] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Omeprazole Injection","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:06:48] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Omeprazole Injection","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7000.00","sku":"PRD-00959","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"3500.00","last_purchase_date":"2026-07-02 23:06:48"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:06:48] production.INFO: Product Store - Product Created {"product_id":959,"product_name":"Omeprazole Injection","product_sku":"PRD-00959"} 
[2026-07-02 23:08:55] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Pause Injection","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"6500.00","selling_price":"13000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:08:55] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Pause Injection","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:08:55] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Pause Injection","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":"PRD-00960","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"6500.00","last_purchase_date":"2026-07-02 23:08:55"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:08:55] production.INFO: Product Store - Product Created {"product_id":960,"product_name":"Pause Injection","product_sku":"PRD-00960"} 
[2026-07-02 23:09:51] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Magnesium Sulphate Injection 2ml","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1000.00","selling_price":"2500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:09:51] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Magnesium Sulphate Injection 2ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:09:51] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Magnesium Sulphate Injection 2ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2500.00","sku":"PRD-00961","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-02 23:09:51"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:09:51] production.INFO: Product Store - Product Created {"product_id":961,"product_name":"Magnesium Sulphate Injection 2ml","product_sku":"PRD-00961"} 
[2026-07-02 23:12:12] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Vagid Pessary 500mg","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3250.00","selling_price":"6500.00","description":null,"purchase_quantity":"15.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:12:12] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Vagid Pessary 500mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"6500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:12:12] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Vagid Pessary 500mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"6500.00","sku":"PRD-00962","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"15.00","last_purchase_price":"3250.00","last_purchase_date":"2026-07-02 23:12:12"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:12:12] production.INFO: Product Store - Product Created {"product_id":962,"product_name":"Vagid Pessary 500mg","product_sku":"PRD-00962"} 
[2026-07-02 23:12:12] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PUR-20260702-151' for key 'purchases_reference_no_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_educ, SQL: insert into `purchases` (`supplier_id`, `business_location`, `reference_no`, `purchase_date`, `status`, `payment_status`, `grand_total`, `created_by`, `updated_at`, `created_at`) values (1, EDUC Pharmacy (BL0001), PUR-20260702-151, 2026-07-02 23:12:12, received, due, 48750, 1, 2026-07-02 23:12:12, 2026-07-02 23:12:12))","error_code":"23000","error_file":"/home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/educ/app/Http/Controllers/ProductController.php(176): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/educ/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/educ/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/educ/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-02 23:12:29] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Vagid Pessary 500mg","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3250.00","selling_price":"6500.00","description":null,"purchase_quantity":"15.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:12:29] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Vagid Pessary 500mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"6500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:12:29] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Vagid Pessary 500mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3250.00","selling_price":"6500.00","sku":"PRD-00963","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"15.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"15.00","last_purchase_price":"3250.00","last_purchase_date":"2026-07-02 23:12:29"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:12:29] production.INFO: Product Store - Product Created {"product_id":963,"product_name":"Vagid Pessary 500mg","product_sku":"PRD-00963"} 
[2026-07-02 23:13:33] production.INFO: Stock Adjustment - Initial State {"product_id":"71","previous_quantity":"13.00","previous_selling_price":"6000.00","validated_data":{"product_id":"71","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 23:13:33] production.INFO: Stock Adjustment - After Quantity Save {"product_id":71,"new_quantity":28.0,"current_stock":28.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 23:14:40] production.INFO: Stock Adjustment - Initial State {"product_id":"72","previous_quantity":"0.00","previous_selling_price":"9000.00","validated_data":{"product_id":"72","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"9000.00","new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 23:14:40] production.INFO: Stock Adjustment - After Quantity Save {"product_id":72,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 23:15:38] production.INFO: Stock Adjustment - Initial State {"product_id":"754","previous_quantity":"3.00","previous_selling_price":"10000.00","validated_data":{"product_id":"754","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 23:15:38] production.INFO: Stock Adjustment - After Quantity Save {"product_id":754,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 23:19:04] production.INFO: Product Store - Request Data {"all_data":{"_token":"YrcyHeoM2YkwtW6xyvbDcYMa6MRnbN0DsqWtTaCS","name":"Povidone Iodine Oint (ZyloP)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1650.00","selling_price":"3500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"10","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-02 23:19:04] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Povidone Iodine Oint (ZyloP)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":null,"alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-02 23:19:04] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Povidone Iodine Oint (ZyloP)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":"PRD-00964","alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1650.00","last_purchase_date":"2026-07-02 23:19:04"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-02 23:19:04] production.INFO: Product Store - Product Created {"product_id":964,"product_name":"Povidone Iodine Oint (ZyloP)","product_sku":"PRD-00964"} 
[2026-07-02 23:20:07] production.INFO: Stock Adjustment - Initial State {"product_id":"70","previous_quantity":"2.00","previous_selling_price":"13000.00","validated_data":{"product_id":"70","adjustment_type":"add","quantity":"3","reason":"new_stock","new_selling_price":"13000.00","new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 23:20:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":70,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-02 23:21:35] production.INFO: Stock Adjustment - Initial State {"product_id":"560","previous_quantity":"0.00","previous_selling_price":"1500.00","validated_data":{"product_id":"560","adjustment_type":"add","quantity":"99","reason":"new_stock","new_selling_price":"2000.00","new_purchase_price":null,"new_expiry_date":"2026-07-02"}} 
[2026-07-02 23:21:35] production.INFO: Stock Adjustment - After Quantity Save {"product_id":560,"new_quantity":99.0,"current_stock":99.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 07:56:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783058197936","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"96.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T11:44:06.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 07:56:38] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-03 07:56:38] production.INFO: Old stock: 96.00  
[2026-07-03 07:56:38] production.INFO: Quantity deducted: 1  
[2026-07-03 07:56:38] production.INFO: New stock: 95  
[2026-07-03 07:56:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783058197936"} 
[2026-07-03 08:09:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783058952325","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"102.00","stock":"116.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T14:25:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 08:09:11] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-03 08:09:11] production.INFO: Old stock: 102.00  
[2026-07-03 08:09:11] production.INFO: Quantity deducted: 1  
[2026-07-03 08:09:11] production.INFO: New stock: 101  
[2026-07-03 08:09:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783058952325"} 
[2026-07-03 08:39:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783060786094","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-06-27T18:54:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"300.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-02T17:08:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-03 08:39:46] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-07-03 08:39:46] production.INFO: Old stock: 1.00  
[2026-07-03 08:39:46] production.INFO: Quantity deducted: 1  
[2026-07-03 08:39:46] production.INFO: New stock: 0  
[2026-07-03 08:39:46] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-03 08:39:46] production.INFO: Old stock: 300.00  
[2026-07-03 08:39:46] production.INFO: Quantity deducted: 10  
[2026-07-03 08:39:46] production.INFO: New stock: 290  
[2026-07-03 08:39:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783060786094"} 
[2026-07-03 08:52:56] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Pause MF","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2250.00","selling_price":"5500.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 08:52:56] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Pause MF","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2250.00","selling_price":"5500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 08:52:56] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Pause MF","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2250.00","selling_price":"5500.00","sku":"PRD-00965","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"2250.00","last_purchase_date":"2026-07-03 08:52:56"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 08:52:56] production.INFO: Product Store - Product Created {"product_id":965,"product_name":"Pause MF","product_sku":"PRD-00965"} 
[2026-07-03 08:53:42] production.INFO: Stock Adjustment - Initial State {"product_id":"106","previous_quantity":"1.00","previous_selling_price":"19000.00","validated_data":{"product_id":"106","adjustment_type":"add","quantity":"4","reason":"new_stock","new_selling_price":"21500.00","new_purchase_price":null,"new_expiry_date":"2026-07-03"}} 
[2026-07-03 08:53:42] production.INFO: Stock Adjustment - After Quantity Save {"product_id":106,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 08:54:31] production.INFO: Stock Adjustment - Initial State {"product_id":"518","previous_quantity":"17.00","previous_selling_price":"3500.00","validated_data":{"product_id":"518","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-03"}} 
[2026-07-03 08:54:31] production.INFO: Stock Adjustment - After Quantity Save {"product_id":518,"new_quantity":37.0,"current_stock":37.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 08:54:56] production.INFO: Stock Adjustment - Initial State {"product_id":"515","previous_quantity":"13.00","previous_selling_price":"4000.00","validated_data":{"product_id":"515","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-03"}} 
[2026-07-03 08:54:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":515,"new_quantity":33.0,"current_stock":33.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 08:55:54] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Pharmadol Caplet","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"100.00","selling_price":"200.00","description":null,"purchase_quantity":"50.00","alert_quantity":"10.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 08:55:54] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Pharmadol Caplet","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"100.00","selling_price":"200.00","sku":null,"alert_quantity":"10.00","expiry_date":null,"description":null,"purchase_quantity":"50.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 08:55:54] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Pharmadol Caplet","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"100.00","selling_price":"200.00","sku":"PRD-00966","alert_quantity":"10.00","expiry_date":null,"description":null,"purchase_quantity":"50.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"50.00","last_purchase_price":"100.00","last_purchase_date":"2026-07-03 08:55:54"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 08:55:54] production.INFO: Product Store - Product Created {"product_id":966,"product_name":"Pharmadol Caplet","product_sku":"PRD-00966"} 
[2026-07-03 09:02:30] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783062150496","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"5.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-02T10:46:47.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":913,"product_id":913,"name":"Olopatadine  Solution 2%","sku":"PRD-00913","price":"17000.00","selling_price":"17000.00","purchase_price":"8500.00","quantity":1,"subtotal":17000,"product":{"id":913,"name":"Olopatadine  Solution 2%","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"8500.00","last_purchase_price":"8500.00","selling_price":"17000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00913","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-06-22","created_at":"2026-06-22T14:37:07.000000Z","updated_at":"2026-07-01T13:52:05.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-03 09:02:30] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-03 09:02:30] production.INFO: Old stock: 5.00  
[2026-07-03 09:02:30] production.INFO: Quantity deducted: 1  
[2026-07-03 09:02:30] production.INFO: New stock: 4  
[2026-07-03 09:02:30] production.INFO: Stock deduction for product: Olopatadine  Solution 2%  
[2026-07-03 09:02:30] production.INFO: Old stock: 2.00  
[2026-07-03 09:02:30] production.INFO: Quantity deducted: 1  
[2026-07-03 09:02:30] production.INFO: New stock: 1  
[2026-07-03 09:02:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783062150496"} 
[2026-07-03 09:10:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783062605455","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":622,"product_id":622,"name":"PAMAGIN-C TABLETS","sku":"3259","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":622,"name":"PAMAGIN-C TABLETS","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"25","brand_id":"20","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3259","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-04-21T13:57:34.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"105.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-02T17:30:57.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 09:10:05] production.INFO: Stock deduction for product: PAMAGIN-C TABLETS  
[2026-07-03 09:10:05] production.INFO: Old stock: 4.00  
[2026-07-03 09:10:05] production.INFO: Quantity deducted: 1  
[2026-07-03 09:10:05] production.INFO: New stock: 3  
[2026-07-03 09:10:05] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-03 09:10:05] production.INFO: Old stock: 105.00  
[2026-07-03 09:10:05] production.INFO: Quantity deducted: 1  
[2026-07-03 09:10:05] production.INFO: New stock: 104  
[2026-07-03 09:10:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783062605455"} 
[2026-07-03 09:21:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783063312076","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":10,"subtotal":5000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"288.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T06:06:23.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 09:21:52] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-03 09:21:52] production.INFO: Old stock: 288.00  
[2026-07-03 09:21:52] production.INFO: Quantity deducted: 10  
[2026-07-03 09:21:52] production.INFO: New stock: 278  
[2026-07-03 09:21:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783063312076"} 
[2026-07-03 10:16:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783066611422","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"29.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-02T17:12:47.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 10:16:52] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-03 10:16:52] production.INFO: Old stock: 29.00  
[2026-07-03 10:16:52] production.INFO: Quantity deducted: 1  
[2026-07-03 10:16:52] production.INFO: New stock: 28  
[2026-07-03 10:16:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783066611422"} 
[2026-07-03 10:22:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783066968844","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":913,"product_id":913,"name":"Olopatadine  Solution 2%","sku":"PRD-00913","price":"17000.00","selling_price":"17000.00","purchase_price":"8500.00","quantity":1,"subtotal":17000,"product":{"id":913,"name":"Olopatadine  Solution 2%","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"8500.00","last_purchase_price":"8500.00","selling_price":"17000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00913","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-06-22","created_at":"2026-06-22T14:37:07.000000Z","updated_at":"2026-07-03T07:02:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"4.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-03T07:02:30.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-03 10:22:50] production.INFO: Stock deduction for product: Olopatadine  Solution 2%  
[2026-07-03 10:22:50] production.INFO: Old stock: 1.00  
[2026-07-03 10:22:50] production.INFO: Quantity deducted: 1  
[2026-07-03 10:22:50] production.INFO: New stock: 0  
[2026-07-03 10:22:50] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-03 10:22:50] production.INFO: Old stock: 4.00  
[2026-07-03 10:22:50] production.INFO: Quantity deducted: 1  
[2026-07-03 10:22:50] production.INFO: New stock: 3  
[2026-07-03 10:22:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783066968844"} 
[2026-07-03 10:31:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783067461843","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"68.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-06-24T06:16:34.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 10:31:02] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-03 10:31:02] production.INFO: Old stock: 68.00  
[2026-07-03 10:31:02] production.INFO: Quantity deducted: 1  
[2026-07-03 10:31:02] production.INFO: New stock: 67  
[2026-07-03 10:31:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783067461843"} 
[2026-07-03 10:33:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783067598601","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"67.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-03T08:31:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 10:33:19] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-03 10:33:19] production.INFO: Old stock: 67.00  
[2026-07-03 10:33:19] production.INFO: Quantity deducted: 1  
[2026-07-03 10:33:19] production.INFO: New stock: 66  
[2026-07-03 10:33:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783067598601"} 
[2026-07-03 11:03:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783069398418","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":713,"product_id":713,"name":"Surgical Blade","sku":"3350","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":3,"subtotal":900,"product":{"id":713,"name":"Surgical Blade","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"150.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"73.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3350","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-29T11:35:30.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":517,"product_id":517,"name":"LOFNAC H SPRAY 100ml","sku":"3154","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":1,"subtotal":20000,"product":{"id":517,"name":"LOFNAC H SPRAY 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3154","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T10:34:04.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":798,"product_id":798,"name":"Cootton 100g (Karemax)","sku":"1204","price":"3500.00","selling_price":"3500.00","purchase_price":"1800.00","quantity":1,"subtotal":3500,"product":{"id":798,"name":"Cootton 100g (Karemax)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1204","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-04-26T13:44:04.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 11:03:19] production.INFO: Stock deduction for product: Surgical Blade  
[2026-07-03 11:03:19] production.INFO: Old stock: 73.00  
[2026-07-03 11:03:19] production.INFO: Quantity deducted: 3  
[2026-07-03 11:03:19] production.INFO: New stock: 70  
[2026-07-03 11:03:19] production.INFO: Stock deduction for product: LOFNAC H SPRAY 100ml  
[2026-07-03 11:03:19] production.INFO: Old stock: 6.00  
[2026-07-03 11:03:19] production.INFO: Quantity deducted: 1  
[2026-07-03 11:03:19] production.INFO: New stock: 5  
[2026-07-03 11:03:19] production.INFO: Stock deduction for product: Cootton 100g (Karemax)  
[2026-07-03 11:03:19] production.INFO: Old stock: 3.00  
[2026-07-03 11:03:19] production.INFO: Quantity deducted: 1  
[2026-07-03 11:03:19] production.INFO: New stock: 2  
[2026-07-03 11:03:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783069398418"} 
[2026-07-03 11:04:20] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783069460722","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"167.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-01T17:20:55.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":924,"product_id":924,"name":"HIPER MAX LADY","sku":"PRD-00924","price":"1000.00","selling_price":"1000.00","purchase_price":"445.00","quantity":1,"subtotal":1000,"product":{"id":924,"name":"HIPER MAX LADY","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"445.00","last_purchase_price":"445.00","selling_price":"1000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00924","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:53:13.000000Z","updated_at":"2026-06-30T17:53:13.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 11:04:20] production.INFO: Stock deduction for product: HEDAX  
[2026-07-03 11:04:20] production.INFO: Old stock: 167.00  
[2026-07-03 11:04:20] production.INFO: Quantity deducted: 2  
[2026-07-03 11:04:20] production.INFO: New stock: 165  
[2026-07-03 11:04:20] production.INFO: Stock deduction for product: HIPER MAX LADY  
[2026-07-03 11:04:20] production.INFO: Old stock: 12.00  
[2026-07-03 11:04:20] production.INFO: Quantity deducted: 1  
[2026-07-03 11:04:20] production.INFO: New stock: 11  
[2026-07-03 11:04:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783069460722"} 
[2026-07-03 11:16:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783070219759","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":122,"product_id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","sku":"0708","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"19","supplier_id":null,"purchase_price":"2750.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0708","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-30T08:17:46.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 11:17:00] production.INFO: Stock deduction for product: BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g  
[2026-07-03 11:17:00] production.INFO: Old stock: 12.00  
[2026-07-03 11:17:00] production.INFO: Quantity deducted: 1  
[2026-07-03 11:17:00] production.INFO: New stock: 11  
[2026-07-03 11:17:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783070219759"} 
[2026-07-03 11:42:41] production.INFO: Stock Adjustment - Initial State {"product_id":"746","previous_quantity":"101.00","previous_selling_price":"4500.00","validated_data":{"product_id":"746","adjustment_type":"subtract","quantity":"4","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-03"}} 
[2026-07-03 11:42:41] production.INFO: Stock Adjustment - After Quantity Save {"product_id":746,"new_quantity":97.0,"current_stock":97.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 11:48:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783072097135","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":816,"product_id":816,"name":"Metoclopramide","sku":"PRD-00816","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":816,"name":"Metoclopramide","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00816","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:41:25.000000Z","updated_at":"2026-05-21T05:49:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-03 11:48:17] production.INFO: Stock deduction for product: Metoclopramide  
[2026-07-03 11:48:17] production.INFO: Old stock: 2.00  
[2026-07-03 11:48:17] production.INFO: Quantity deducted: 1  
[2026-07-03 11:48:17] production.INFO: New stock: 1  
[2026-07-03 11:48:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783072097135"} 
[2026-07-03 11:51:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783072280998","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":252,"product_id":252,"name":"Diclofenac SR","sku":"1381","price":"1000.00","selling_price":"1000.00","purchase_price":"450.00","quantity":2,"subtotal":2000,"product":{"id":252,"name":"Diclofenac SR","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"22.00","stock":"24.00","product_type":"Single","tax":null,"sku":"1381","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-20T10:08:23.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 11:51:20] production.INFO: Stock deduction for product: Diclofenac SR  
[2026-07-03 11:51:20] production.INFO: Old stock: 22.00  
[2026-07-03 11:51:20] production.INFO: Quantity deducted: 2  
[2026-07-03 11:51:20] production.INFO: New stock: 20  
[2026-07-03 11:51:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783072280998"} 
[2026-07-03 12:02:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783072937140","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3500.00","selling_price":"3500.00","purchase_price":"1560.00","quantity":1,"subtotal":3500,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"18.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T08:21:04.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":93,"product_id":93,"name":"BABY GRIPE WATER","sku":"1115","price":"3500.00","selling_price":"3500.00","purchase_price":"1802.00","quantity":1,"subtotal":3500,"product":{"id":93,"name":"BABY GRIPE WATER","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1802.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1115","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-06T00:11:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 12:02:16] production.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-07-03 12:02:16] production.INFO: Old stock: 18.00  
[2026-07-03 12:02:16] production.INFO: Quantity deducted: 1  
[2026-07-03 12:02:16] production.INFO: New stock: 17  
[2026-07-03 12:02:16] production.INFO: Stock deduction for product: BABY GRIPE WATER  
[2026-07-03 12:02:16] production.INFO: Old stock: 2.00  
[2026-07-03 12:02:16] production.INFO: Quantity deducted: 1  
[2026-07-03 12:02:16] production.INFO: New stock: 1  
[2026-07-03 12:02:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783072937140"} 
[2026-07-03 12:06:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783073190642","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"3.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-03T08:22:50.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 12:06:30] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-03 12:06:30] production.INFO: Old stock: 3.00  
[2026-07-03 12:06:30] production.INFO: Quantity deducted: 1  
[2026-07-03 12:06:30] production.INFO: New stock: 2  
[2026-07-03 12:06:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783073190642"} 
[2026-07-03 12:07:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783073246098","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":458,"product_id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","sku":"3095","price":"1500.00","selling_price":"1500.00","purchase_price":"760.00","quantity":1,"subtotal":1500,"product":{"id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"24.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T14:54:32.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 12:07:26] production.INFO: Stock deduction for product: IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS  
[2026-07-03 12:07:26] production.INFO: Old stock: 24.00  
[2026-07-03 12:07:26] production.INFO: Quantity deducted: 1  
[2026-07-03 12:07:26] production.INFO: New stock: 23  
[2026-07-03 12:07:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783073246098"} 
[2026-07-03 12:16:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783073803424","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":2,"subtotal":4000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-06-26T13:40:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 12:16:43] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-07-03 12:16:43] production.INFO: Old stock: 6.00  
[2026-07-03 12:16:43] production.INFO: Quantity deducted: 2  
[2026-07-03 12:16:43] production.INFO: New stock: 4  
[2026-07-03 12:16:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783073803424"} 
[2026-07-03 12:44:56] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783075496353","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"31.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-30T15:17:35.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"290.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T06:39:46.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 12:44:56] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-07-03 12:44:56] production.INFO: Old stock: 31.00  
[2026-07-03 12:44:56] production.INFO: Quantity deducted: 1  
[2026-07-03 12:44:56] production.INFO: New stock: 30  
[2026-07-03 12:44:56] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-03 12:44:56] production.INFO: Old stock: 290.00  
[2026-07-03 12:44:56] production.INFO: Quantity deducted: 2  
[2026-07-03 12:44:56] production.INFO: New stock: 288  
[2026-07-03 12:44:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783075496353"} 
[2026-07-03 12:49:38] production.INFO: Stock Adjustment - Initial State {"product_id":"106","previous_quantity":"5.00","previous_selling_price":"21500.00","validated_data":{"product_id":"106","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-03"}} 
[2026-07-03 12:49:38] production.INFO: Stock Adjustment - After Quantity Save {"product_id":106,"new_quantity":4.0,"current_stock":4.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 14:01:36] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783080094640","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":939,"product_id":939,"name":"Betamethasone Oint (Elyvate)","sku":"PRD-00939","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":939,"name":"Betamethasone Oint (Elyvate)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00939","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:12:35.000000Z","updated_at":"2026-07-02T20:12:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":177,"product_id":177,"name":"CIPROFLOXACIN (XIPRO) EYE DROPS","sku":"0735","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":177,"name":"CIPROFLOXACIN (XIPRO) EYE DROPS","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0735","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-02T20:26:19.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 14:01:36] production.INFO: Stock deduction for product: Betamethasone Oint (Elyvate)  
[2026-07-03 14:01:36] production.INFO: Old stock: 5.00  
[2026-07-03 14:01:36] production.INFO: Quantity deducted: 1  
[2026-07-03 14:01:36] production.INFO: New stock: 4  
[2026-07-03 14:01:36] production.INFO: Stock deduction for product: CIPROFLOXACIN (XIPRO) EYE DROPS  
[2026-07-03 14:01:36] production.INFO: Old stock: 10.00  
[2026-07-03 14:01:36] production.INFO: Quantity deducted: 1  
[2026-07-03 14:01:36] production.INFO: New stock: 9  
[2026-07-03 14:01:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783080094640"} 
[2026-07-03 14:02:07] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783080099592","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":939,"product_id":939,"name":"Betamethasone Oint (Elyvate)","sku":"PRD-00939","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":939,"name":"Betamethasone Oint (Elyvate)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00939","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:12:35.000000Z","updated_at":"2026-07-02T20:12:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":177,"product_id":177,"name":"CIPROFLOXACIN (XIPRO) EYE DROPS","sku":"0735","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":177,"name":"CIPROFLOXACIN (XIPRO) EYE DROPS","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0735","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-02T20:26:19.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 14:02:07] production.INFO: Stock deduction for product: Betamethasone Oint (Elyvate)  
[2026-07-03 14:02:07] production.INFO: Old stock: 4.00  
[2026-07-03 14:02:07] production.INFO: Quantity deducted: 1  
[2026-07-03 14:02:07] production.INFO: New stock: 3  
[2026-07-03 14:02:07] production.INFO: Stock deduction for product: CIPROFLOXACIN (XIPRO) EYE DROPS  
[2026-07-03 14:02:07] production.INFO: Old stock: 9.00  
[2026-07-03 14:02:07] production.INFO: Quantity deducted: 1  
[2026-07-03 14:02:07] production.INFO: New stock: 8  
[2026-07-03 14:02:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783080099592"} 
[2026-07-03 14:03:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783080233160","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":965,"product_id":965,"name":"Pause MF","sku":"PRD-00965","price":"5500.00","selling_price":"5500.00","purchase_price":"2250.00","quantity":1,"subtotal":5500,"product":{"id":965,"name":"Pause MF","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2250.00","last_purchase_price":"2250.00","selling_price":"5500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00965","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T06:52:56.000000Z","updated_at":"2026-07-03T06:52:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-03 14:03:52] production.INFO: Stock deduction for product: Pause MF  
[2026-07-03 14:03:52] production.INFO: Old stock: 3.00  
[2026-07-03 14:03:52] production.INFO: Quantity deducted: 1  
[2026-07-03 14:03:52] production.INFO: New stock: 2  
[2026-07-03 14:03:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783080233160"} 
[2026-07-03 14:04:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783080267392","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"102.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-02T05:55:13.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-03 14:04:26] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-03 14:04:26] production.INFO: Old stock: 102.00  
[2026-07-03 14:04:26] production.INFO: Quantity deducted: 1  
[2026-07-03 14:04:26] production.INFO: New stock: 101  
[2026-07-03 14:04:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783080267392"} 
[2026-07-03 14:17:44] production.INFO: Stock Adjustment - Initial State {"product_id":"829","previous_quantity":"0.00","previous_selling_price":"2000.00","validated_data":{"product_id":"829","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-03"}} 
[2026-07-03 14:17:44] production.INFO: Stock Adjustment - After Quantity Save {"product_id":829,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-03 14:41:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783082503039","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":2,"subtotal":4000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"31.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-06-21T15:51:55.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 14:41:44] production.INFO: Stock deduction for product: Iduplus  
[2026-07-03 14:41:44] production.INFO: Old stock: 31.00  
[2026-07-03 14:41:44] production.INFO: Quantity deducted: 2  
[2026-07-03 14:41:44] production.INFO: New stock: 29  
[2026-07-03 14:41:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783082503039"} 
[2026-07-03 15:20:55] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783084855772","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":66,"product_id":66,"name":"AMOXICILLIN &POTASSIUM CLAVULANATE (625MG) (LABCLAV)","sku":"0677","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":66,"name":"AMOXICILLIN &POTASSIUM CLAVULANATE (625MG) (LABCLAV)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0677","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-04-05T13:55:05.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":104,"product_id":104,"name":"BENYLIN 4FLU-200ML","sku":"1246","price":"40000.00","selling_price":"40000.00","purchase_price":"21500.00","quantity":1,"subtotal":40000,"product":{"id":104,"name":"BENYLIN 4FLU-200ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"21500.00","last_purchase_price":null,"selling_price":"40000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1246","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-11T12:22:05.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":30000},{"method":"national_bank","amount":25000}]}} 
[2026-07-03 15:21:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783084888812","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":2,"subtotal":3000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"95.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T05:56:38.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 15:21:27] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-03 15:21:27] production.INFO: Old stock: 95.00  
[2026-07-03 15:21:27] production.INFO: Quantity deducted: 2  
[2026-07-03 15:21:27] production.INFO: New stock: 93  
[2026-07-03 15:21:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783084888812"} 
[2026-07-03 15:34:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783085667633","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":389,"product_id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","sku":"3026","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"8.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3026","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T16:57:10.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 15:34:28] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 30g  
[2026-07-03 15:34:28] production.INFO: Old stock: 8.00  
[2026-07-03 15:34:28] production.INFO: Quantity deducted: 1  
[2026-07-03 15:34:28] production.INFO: New stock: 7  
[2026-07-03 15:34:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783085667633"} 
[2026-07-03 15:58:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783087089971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":829,"product_id":829,"name":"Amoxicillin Capsules BP 250 (Moxileb-250)","sku":"PRD-00829","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":829,"name":"Amoxicillin Capsules BP 250 (Moxileb-250)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00829","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":"2026-04-03","created_at":"2026-04-03T12:09:48.000000Z","updated_at":"2026-07-03T12:17:44.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 15:58:10] production.INFO: Stock deduction for product: Amoxicillin Capsules BP 250 (Moxileb-250)  
[2026-07-03 15:58:10] production.INFO: Old stock: 10.00  
[2026-07-03 15:58:10] production.INFO: Quantity deducted: 1  
[2026-07-03 15:58:10] production.INFO: New stock: 9  
[2026-07-03 15:58:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783087089971"} 
[2026-07-03 16:14:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783088094767","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":66,"product_id":66,"name":"AMOXICILLIN &POTASSIUM CLAVULANATE (625MG) (LABCLAV)","sku":"0677","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":66,"name":"AMOXICILLIN &POTASSIUM CLAVULANATE (625MG) (LABCLAV)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0677","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-03T13:20:55.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 16:14:55] production.INFO: Stock deduction for product: AMOXICILLIN &POTASSIUM CLAVULANATE (625MG) (LABCLAV)  
[2026-07-03 16:14:55] production.INFO: Old stock: 2.00  
[2026-07-03 16:14:55] production.INFO: Quantity deducted: 1  
[2026-07-03 16:14:55] production.INFO: New stock: 1  
[2026-07-03 16:14:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783088094767"} 
[2026-07-03 16:20:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783088431261","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":2,"subtotal":5000,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"8.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-02T16:04:53.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 16:20:32] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-07-03 16:20:32] production.INFO: Old stock: 8.00  
[2026-07-03 16:20:32] production.INFO: Quantity deducted: 2  
[2026-07-03 16:20:32] production.INFO: New stock: 6  
[2026-07-03 16:20:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783088431261"} 
[2026-07-03 16:32:31] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783089150427","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":4,"subtotal":10000,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"12.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T14:32:49.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T16:20:27.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":407,"product_id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","sku":"3044","price":"3000.00","selling_price":"3000.00","purchase_price":"1100.00","quantity":1,"subtotal":3000,"product":{"id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3044","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T18:06:27.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"4000.00","selling_price":"4000.00","purchase_price":"1750.00","quantity":1,"subtotal":4000,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"4000.00","current_stock":"13.00","stock":"15.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-10","last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-06-16T16:20:57.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-03 16:32:31] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-07-03 16:32:31] production.INFO: Old stock: 12.00  
[2026-07-03 16:32:31] production.INFO: Quantity deducted: 4  
[2026-07-03 16:32:31] production.INFO: New stock: 8  
[2026-07-03 16:32:31] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-07-03 16:32:31] production.INFO: Old stock: 7.00  
[2026-07-03 16:32:31] production.INFO: Quantity deducted: 1  
[2026-07-03 16:32:31] production.INFO: New stock: 6  
[2026-07-03 16:32:31] production.INFO: Stock deduction for product: Gentamcycin Eye/Ear Drop 5ml  
[2026-07-03 16:32:31] production.INFO: Old stock: 8.00  
[2026-07-03 16:32:31] production.INFO: Quantity deducted: 1  
[2026-07-03 16:32:31] production.INFO: New stock: 7  
[2026-07-03 16:32:31] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-07-03 16:32:31] production.INFO: Old stock: 13.00  
[2026-07-03 16:32:31] production.INFO: Quantity deducted: 1  
[2026-07-03 16:32:31] production.INFO: New stock: 12  
[2026-07-03 16:32:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783089150427"} 
[2026-07-03 16:33:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783089190226","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":748,"product_id":748,"name":"Vagid CL Pessary","sku":"3385","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":748,"name":"Vagid CL Pessary","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3385","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T16:38:16.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"30.00","stock":"41.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-03T10:44:56.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-03 16:33:10] production.INFO: Stock deduction for product: Vagid CL Pessary  
[2026-07-03 16:33:10] production.INFO: Old stock: 5.00  
[2026-07-03 16:33:10] production.INFO: Quantity deducted: 1  
[2026-07-03 16:33:10] production.INFO: New stock: 4  
[2026-07-03 16:33:10] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-07-03 16:33:10] production.INFO: Old stock: 30.00  
[2026-07-03 16:33:10] production.INFO: Quantity deducted: 1  
[2026-07-03 16:33:10] production.INFO: New stock: 29  
[2026-07-03 16:33:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783089190226"} 
[2026-07-03 16:50:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783090207630","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"13.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-02T10:07:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-03 16:50:11] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-07-03 16:50:11] production.INFO: Old stock: 13.00  
[2026-07-03 16:50:11] production.INFO: Quantity deducted: 1  
[2026-07-03 16:50:11] production.INFO: New stock: 12  
[2026-07-03 16:50:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783090207630"} 
[2026-07-03 16:51:48] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Disposable Syringe 50ml","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"25.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 16:51:48] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Disposable Syringe 50ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"25.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 16:51:48] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Disposable Syringe 50ml","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00967","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"25.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"25.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-03 16:51:48"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 16:51:48] production.INFO: Product Store - Product Created {"product_id":967,"product_name":"Disposable Syringe 50ml","product_sku":"PRD-00967"} 
[2026-07-03 16:53:59] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"E-Vien Softgel Cap","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3500.00","selling_price":"7500.00","description":null,"purchase_quantity":"6.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 16:53:59] production.INFO: Product Store - Validation Success {"validated_data":{"name":"E-Vien Softgel Cap","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 16:53:59] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"E-Vien Softgel Cap","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","selling_price":"7500.00","sku":"PRD-00968","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"6.00","last_purchase_price":"3500.00","last_purchase_date":"2026-07-03 16:53:59"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 16:53:59] production.INFO: Product Store - Product Created {"product_id":968,"product_name":"E-Vien Softgel Cap","product_sku":"PRD-00968"} 
[2026-07-03 16:57:43] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Gem-C Chewable (Vitamin C 500 mg + Zinc )","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1250.00","selling_price":"2500.00","description":null,"purchase_quantity":"20.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 16:57:43] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Gem-C Chewable (Vitamin C 500 mg + Zinc )","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","selling_price":"2500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 16:57:43] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Gem-C Chewable (Vitamin C 500 mg + Zinc )","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","selling_price":"2500.00","sku":"PRD-00969","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"20.00","last_purchase_price":"1250.00","last_purchase_date":"2026-07-03 16:57:43"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 16:57:43] production.INFO: Product Store - Product Created {"product_id":969,"product_name":"Gem-C Chewable (Vitamin C 500 mg + Zinc )","product_sku":"PRD-00969"} 
[2026-07-03 17:02:27] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Tummyvit Tab (Ofloxacin & Ornidazole )","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"5500.00","selling_price":"11500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:02:27] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Tummyvit Tab (Ofloxacin & Ornidazole )","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"11500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:02:27] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Tummyvit Tab (Ofloxacin & Ornidazole )","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","selling_price":"11500.00","sku":"PRD-00970","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"5500.00","last_purchase_date":"2026-07-03 17:02:27"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:02:27] production.INFO: Product Store - Product Created {"product_id":970,"product_name":"Tummyvit Tab (Ofloxacin & Ornidazole )","product_sku":"PRD-00970"} 
[2026-07-03 17:03:53] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Levimix 500 Tablets (Levofloxacin 500 mg )","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4560.00","selling_price":"9500.00","description":null,"purchase_quantity":"4.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:03:53] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Levimix 500 Tablets (Levofloxacin 500 mg )","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4560.00","selling_price":"9500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"4.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:03:53] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Levimix 500 Tablets (Levofloxacin 500 mg )","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4560.00","selling_price":"9500.00","sku":"PRD-00971","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"4.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"4.00","last_purchase_price":"4560.00","last_purchase_date":"2026-07-03 17:03:53"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:03:53] production.INFO: Product Store - Product Created {"product_id":971,"product_name":"Levimix 500 Tablets (Levofloxacin 500 mg )","product_sku":"PRD-00971"} 
[2026-07-03 17:05:50] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Gut-Active (Pre Probiotics Capsules)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"6500.00","selling_price":"13000.00","description":null,"purchase_quantity":"6.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:05:50] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Gut-Active (Pre Probiotics Capsules)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:05:50] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Gut-Active (Pre Probiotics Capsules)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"6500.00","selling_price":"13000.00","sku":"PRD-00972","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"6.00","last_purchase_price":"6500.00","last_purchase_date":"2026-07-03 17:05:50"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:05:50] production.INFO: Product Store - Product Created {"product_id":972,"product_name":"Gut-Active (Pre Probiotics Capsules)","product_sku":"PRD-00972"} 
[2026-07-03 17:07:05] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Vitamin Softgel (","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4750.00","selling_price":"9500.00","description":null,"purchase_quantity":"6.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:07:05] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Vitamin Softgel (","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4750.00","selling_price":"9500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:07:05] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Vitamin Softgel (","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4750.00","selling_price":"9500.00","sku":"PRD-00973","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"6.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"6.00","last_purchase_price":"4750.00","last_purchase_date":"2026-07-03 17:07:05"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:07:05] production.INFO: Product Store - Product Created {"product_id":973,"product_name":"Vitamin Softgel (","product_sku":"PRD-00973"} 
[2026-07-03 17:08:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783091290377","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"27.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T06:29:05.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"55.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-02T08:43:42.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 17:08:11] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-03 17:08:11] production.INFO: Old stock: 27.00  
[2026-07-03 17:08:11] production.INFO: Quantity deducted: 1  
[2026-07-03 17:08:11] production.INFO: New stock: 26  
[2026-07-03 17:08:11] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-03 17:08:11] production.INFO: Old stock: 55.00  
[2026-07-03 17:08:11] production.INFO: Quantity deducted: 1  
[2026-07-03 17:08:11] production.INFO: New stock: 54  
[2026-07-03 17:08:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783091290377"} 
[2026-07-03 17:09:00] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Calcit D Capsules (Cholecalciferol)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1750.00","selling_price":"3500.00","description":null,"purchase_quantity":"20.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:09:00] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Calcit D Capsules (Cholecalciferol)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","selling_price":"3500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:09:00] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Calcit D Capsules (Cholecalciferol)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","selling_price":"3500.00","sku":"PRD-00974","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"20.00","last_purchase_price":"1750.00","last_purchase_date":"2026-07-03 17:09:00"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:09:00] production.INFO: Product Store - Product Created {"product_id":974,"product_name":"Calcit D Capsules (Cholecalciferol)","product_sku":"PRD-00974"} 
[2026-07-03 17:11:12] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"500.00","selling_price":"1000.00","description":null,"purchase_quantity":"24.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:11:12] production.INFO: Product Store - Validation Success {"validated_data":{"name":"G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"24.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:11:12] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":"PRD-00975","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"24.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"24.00","last_purchase_price":"500.00","last_purchase_date":"2026-07-03 17:11:12"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:11:12] production.INFO: Product Store - Product Created {"product_id":975,"product_name":"G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)","product_sku":"PRD-00975"} 
[2026-07-03 17:13:23] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Gut-Active Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3220.00","selling_price":"6500.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:13:23] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Gut-Active Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3220.00","selling_price":"6500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:13:23] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Gut-Active Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3220.00","selling_price":"6500.00","sku":"PRD-00976","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"3220.00","last_purchase_date":"2026-07-03 17:13:23"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:13:23] production.INFO: Product Store - Product Created {"product_id":976,"product_name":"Gut-Active Syrup","product_sku":"PRD-00976"} 
[2026-07-03 17:14:39] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Turcod D Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3700.00","selling_price":"7500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:14:39] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Turcod D Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3700.00","selling_price":"7500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:14:39] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Turcod D Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3700.00","selling_price":"7500.00","sku":"PRD-00977","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"3700.00","last_purchase_date":"2026-07-03 17:14:39"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:14:39] production.INFO: Product Store - Product Created {"product_id":977,"product_name":"Turcod D Syrup","product_sku":"PRD-00977"} 
[2026-07-03 17:15:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783091711583","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":200,"product_id":200,"name":"DACOF EXPECTORANT SYRUP","sku":"0761","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":200,"name":"DACOF EXPECTORANT SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"9.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0761","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-17T17:43:50.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 17:15:12] production.INFO: Stock deduction for product: DACOF EXPECTORANT SYRUP  
[2026-07-03 17:15:12] production.INFO: Old stock: 9.00  
[2026-07-03 17:15:12] production.INFO: Quantity deducted: 1  
[2026-07-03 17:15:12] production.INFO: New stock: 8  
[2026-07-03 17:15:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783091711583"} 
[2026-07-03 17:16:51] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Mebendazole Oral Suspension (Warmectin Suspension)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2050.00","selling_price":"4500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:16:51] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Mebendazole Oral Suspension (Warmectin Suspension)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2050.00","selling_price":"4500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:16:51] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Mebendazole Oral Suspension (Warmectin Suspension)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2050.00","selling_price":"4500.00","sku":"PRD-00978","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"2050.00","last_purchase_date":"2026-07-03 17:16:51"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:16:51] production.INFO: Product Store - Product Created {"product_id":978,"product_name":"Mebendazole Oral Suspension (Warmectin Suspension)","product_sku":"PRD-00978"} 
[2026-07-03 17:18:34] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Aluminium Hydroxide Suspension (Gasner Gel Suspension)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2700.00","selling_price":"5500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:18:34] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Aluminium Hydroxide Suspension (Gasner Gel Suspension)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2700.00","selling_price":"5500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:18:34] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Aluminium Hydroxide Suspension (Gasner Gel Suspension)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2700.00","selling_price":"5500.00","sku":"PRD-00979","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"2700.00","last_purchase_date":"2026-07-03 17:18:34"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:18:34] production.INFO: Product Store - Product Created {"product_id":979,"product_name":"Aluminium Hydroxide Suspension (Gasner Gel Suspension)","product_sku":"PRD-00979"} 
[2026-07-03 17:19:59] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Vitogem Syrup (Multi Vitamin with Zinc Syrup)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3135.00","selling_price":"6500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:19:59] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Vitogem Syrup (Multi Vitamin with Zinc Syrup)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3135.00","selling_price":"6500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:19:59] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Vitogem Syrup (Multi Vitamin with Zinc Syrup)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3135.00","selling_price":"6500.00","sku":"PRD-00980","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"3135.00","last_purchase_date":"2026-07-03 17:19:59"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:19:59] production.INFO: Product Store - Product Created {"product_id":980,"product_name":"Vitogem Syrup (Multi Vitamin with Zinc Syrup)","product_sku":"PRD-00980"} 
[2026-07-03 17:24:01] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Latex Examination Powdered Gloves M.V","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"400.00","selling_price":"800.00","description":null,"purchase_quantity":"250.00","alert_quantity":"20.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:24:01] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Latex Examination Powdered Gloves M.V","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"400.00","selling_price":"800.00","sku":null,"alert_quantity":"20.00","expiry_date":null,"description":null,"purchase_quantity":"250.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:24:01] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Latex Examination Powdered Gloves M.V","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"400.00","selling_price":"800.00","sku":"PRD-00981","alert_quantity":"20.00","expiry_date":null,"description":null,"purchase_quantity":"250.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"250.00","last_purchase_price":"400.00","last_purchase_date":"2026-07-03 17:24:01"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:24:01] production.INFO: Product Store - Product Created {"product_id":981,"product_name":"Latex Examination Powdered Gloves M.V","product_sku":"PRD-00981"} 
[2026-07-03 17:24:55] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Turcof D Syrup","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"3575.00","selling_price":"7500.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:24:56] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Turcof D Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3575.00","selling_price":"7500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:24:56] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Turcof D Syrup","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3575.00","selling_price":"7500.00","sku":"PRD-00982","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"3575.00","last_purchase_date":"2026-07-03 17:24:56"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:24:56] production.INFO: Product Store - Product Created {"product_id":982,"product_name":"Turcof D Syrup","product_sku":"PRD-00982"} 
[2026-07-03 17:27:31] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Sodium cromoglycate","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"13000.00","selling_price":"25000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:27:31] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Sodium cromoglycate","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"13000.00","selling_price":"25000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:27:31] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Sodium cromoglycate","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"13000.00","selling_price":"25000.00","sku":"PRD-00983","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"13000.00","last_purchase_date":"2026-07-03 17:27:31"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:27:31] production.INFO: Product Store - Product Created {"product_id":983,"product_name":"Sodium cromoglycate","product_sku":"PRD-00983"} 
[2026-07-03 17:30:32] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"Fluonazole","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4250.00","selling_price":"8500.00","description":null,"purchase_quantity":"30.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:30:32] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Fluonazole","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","selling_price":"8500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"30.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:30:32] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Fluonazole","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","selling_price":"8500.00","sku":"PRD-00984","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"30.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"30.00","last_purchase_price":"4250.00","last_purchase_date":"2026-07-03 17:30:32"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:30:32] production.INFO: Product Store - Product Created {"product_id":984,"product_name":"Fluonazole","product_sku":"PRD-00984"} 
[2026-07-03 17:31:14] production.INFO: Product Store - Request Data {"all_data":{"_token":"FJrVJAI8kQQv85XxAXhJx5YB3seDPHwbFhUTzdi0","name":"High power bangala","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"10000.00","selling_price":"20000.00","description":null,"purchase_quantity":"1.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-03 17:31:14] production.INFO: Product Store - Validation Success {"validated_data":{"name":"High power bangala","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"10000.00","selling_price":"20000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-03 17:31:14] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"High power bangala","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"10000.00","selling_price":"20000.00","sku":"PRD-00985","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"1.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"1.00","last_purchase_price":"10000.00","last_purchase_date":"2026-07-03 17:31:14"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-03 17:31:14] production.INFO: Product Store - Product Created {"product_id":985,"product_name":"High power bangala","product_sku":"PRD-00985"} 
[2026-07-03 17:34:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783092853531","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"159.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T16:18:18.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 17:34:14] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-03 17:34:14] production.INFO: Old stock: 159.00  
[2026-07-03 17:34:14] production.INFO: Quantity deducted: 2  
[2026-07-03 17:34:14] production.INFO: New stock: 157  
[2026-07-03 17:34:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783092853531"} 
[2026-07-03 17:53:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783094021406","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"29.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-18T16:40:43.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 17:53:41] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-07-03 17:53:41] production.INFO: Old stock: 29.00  
[2026-07-03 17:53:41] production.INFO: Quantity deducted: 1  
[2026-07-03 17:53:41] production.INFO: New stock: 28  
[2026-07-03 17:53:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783094021406"} 
[2026-07-03 18:13:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783095205713","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":704,"product_id":704,"name":"Stameta Yellow","sku":"3341","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":704,"name":"Stameta Yellow","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"11000.00","last_purchase_price":null,"selling_price":"22000.00","current_stock":"3.00","stock":"3.00","product_type":"Single","tax":null,"sku":"3341","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-09T08:58:57.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 18:13:25] production.INFO: Stock deduction for product: Stameta Yellow  
[2026-07-03 18:13:25] production.INFO: Old stock: 3.00  
[2026-07-03 18:13:25] production.INFO: Quantity deducted: 1  
[2026-07-03 18:13:25] production.INFO: New stock: 2  
[2026-07-03 18:13:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783095205713"} 
[2026-07-03 18:14:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783095240473","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":32,"product_id":32,"name":"ACINET DRY SYRUP (Amoxicillin & Clavulanate Potassium)","sku":"0663","price":"11000.00","selling_price":"11000.00","purchase_price":"5800.00","quantity":1,"subtotal":11000,"product":{"id":32,"name":"ACINET DRY SYRUP (Amoxicillin & Clavulanate Potassium)","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"20","supplier_id":null,"purchase_price":"5800.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0663","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-05-07T09:33:42.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 18:14:00] production.INFO: Stock deduction for product: ACINET DRY SYRUP (Amoxicillin & Clavulanate Potassium)  
[2026-07-03 18:14:00] production.INFO: Old stock: 4.00  
[2026-07-03 18:14:00] production.INFO: Quantity deducted: 1  
[2026-07-03 18:14:00] production.INFO: New stock: 3  
[2026-07-03 18:14:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783095240473"} 
[2026-07-03 18:36:20] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783096578948","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":907,"product_id":907,"name":"Amoxicillin Syrup (Crocillin)","sku":"PRD-00907","price":"5500.00","selling_price":"5500.00","purchase_price":"2600.00","quantity":1,"subtotal":5500,"product":{"id":907,"name":"Amoxicillin Syrup (Crocillin)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2600.00","last_purchase_price":"2600.00","selling_price":"5500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00907","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-10","created_at":"2026-06-10T10:34:01.000000Z","updated_at":"2026-06-28T06:59:21.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":908,"product_id":908,"name":"CoTrimoxazole Syp (LTrim)","sku":"PRD-00908","price":"5000.00","selling_price":"5000.00","purchase_price":"2350.00","quantity":1,"subtotal":5000,"product":{"id":908,"name":"CoTrimoxazole Syp (LTrim)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","last_purchase_price":"2350.00","selling_price":"5000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00908","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2026-06-10","last_purchase_date":"2026-06-10","created_at":"2026-06-10T13:04:29.000000Z","updated_at":"2026-06-10T13:07:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":147,"product_id":147,"name":"Cafemol Peads","sku":"1179","price":"300.00","selling_price":"300.00","purchase_price":"79.00","quantity":2,"subtotal":600,"product":{"id":147,"name":"Cafemol Peads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"79.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"44.00","stock":"79.00","product_type":"Single","tax":null,"sku":"1179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-20T06:28:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":890,"product_id":890,"name":"Amidol paracetamol","sku":"PRD-00890","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":890,"name":"Amidol paracetamol","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00890","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T09:58:57.000000Z","updated_at":"2026-05-26T09:58:57.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 18:36:20] production.INFO: Stock deduction for product: Amoxicillin Syrup (Crocillin)  
[2026-07-03 18:36:20] production.INFO: Old stock: 8.00  
[2026-07-03 18:36:20] production.INFO: Quantity deducted: 1  
[2026-07-03 18:36:20] production.INFO: New stock: 7  
[2026-07-03 18:36:20] production.INFO: Stock deduction for product: CoTrimoxazole Syp (LTrim)  
[2026-07-03 18:36:20] production.INFO: Old stock: 10.00  
[2026-07-03 18:36:20] production.INFO: Quantity deducted: 1  
[2026-07-03 18:36:20] production.INFO: New stock: 9  
[2026-07-03 18:36:20] production.INFO: Stock deduction for product: Cafemol Peads  
[2026-07-03 18:36:20] production.INFO: Old stock: 44.00  
[2026-07-03 18:36:20] production.INFO: Quantity deducted: 2  
[2026-07-03 18:36:20] production.INFO: New stock: 42  
[2026-07-03 18:36:20] production.INFO: Stock deduction for product: Amidol paracetamol  
[2026-07-03 18:36:20] production.INFO: Old stock: 50.00  
[2026-07-03 18:36:20] production.INFO: Quantity deducted: 1  
[2026-07-03 18:36:20] production.INFO: New stock: 49  
[2026-07-03 18:36:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783096578948"} 
[2026-07-03 18:44:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783097061130","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":737,"product_id":737,"name":"Tripride 2","sku":"3374","price":"18500.00","selling_price":"18500.00","purchase_price":"9300.00","quantity":1,"subtotal":18500,"product":{"id":737,"name":"Tripride 2","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":null,"supplier_id":null,"purchase_price":"9300.00","last_purchase_price":null,"selling_price":"18500.00","current_stock":"32.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3374","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-26T10:08:46.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-03 18:44:22] production.INFO: Stock deduction for product: Tripride 2  
[2026-07-03 18:44:22] production.INFO: Old stock: 32.00  
[2026-07-03 18:44:22] production.INFO: Quantity deducted: 1  
[2026-07-03 18:44:22] production.INFO: New stock: 31  
[2026-07-03 18:44:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783097061130"} 
[2026-07-03 18:57:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783097822742","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"19.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-07-01T18:58:57.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"266.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T16:02:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"288.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T10:44:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 18:57:03] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-03 18:57:03] production.INFO: Old stock: 19.00  
[2026-07-03 18:57:03] production.INFO: Quantity deducted: 1  
[2026-07-03 18:57:03] production.INFO: New stock: 18  
[2026-07-03 18:57:03] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-03 18:57:03] production.INFO: Old stock: 266.00  
[2026-07-03 18:57:03] production.INFO: Quantity deducted: 1  
[2026-07-03 18:57:03] production.INFO: New stock: 265  
[2026-07-03 18:57:03] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-03 18:57:03] production.INFO: Old stock: 288.00  
[2026-07-03 18:57:03] production.INFO: Quantity deducted: 1  
[2026-07-03 18:57:03] production.INFO: New stock: 287  
[2026-07-03 18:57:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783097822742"} 
[2026-07-03 18:57:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783097832654","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"BONNISAN","sku":"1052","price":"20000.00","selling_price":"20000.00","purchase_price":"10500.00","quantity":1,"subtotal":20000,"product":{"id":136,"name":"BONNISAN","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"10500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"6.00","stock":"6.00","product_type":"Single","tax":null,"sku":"1052","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-18T07:33:33.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 18:57:12] production.INFO: Stock deduction for product: BONNISAN  
[2026-07-03 18:57:12] production.INFO: Old stock: 6.00  
[2026-07-03 18:57:12] production.INFO: Quantity deducted: 1  
[2026-07-03 18:57:12] production.INFO: New stock: 5  
[2026-07-03 18:57:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783097832654"} 
[2026-07-03 19:05:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783098338756","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":754,"product_id":754,"name":"Vifex Syrup","sku":"3391","price":"10000.00","selling_price":"10000.00","purchase_price":"4850.00","quantity":1,"subtotal":10000,"product":{"id":754,"name":"Vifex Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"4850.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3391","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T21:15:38.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-03 19:05:40] production.INFO: Stock deduction for product: Vifex Syrup  
[2026-07-03 19:05:40] production.INFO: Old stock: 13.00  
[2026-07-03 19:05:40] production.INFO: Quantity deducted: 1  
[2026-07-03 19:05:40] production.INFO: New stock: 12  
[2026-07-03 19:05:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783098338756"} 
[2026-07-03 19:11:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783098704899","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"169.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-02T16:20:32.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 19:11:45] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-03 19:11:45] production.INFO: Old stock: 169.00  
[2026-07-03 19:11:45] production.INFO: Quantity deducted: 1  
[2026-07-03 19:11:45] production.INFO: New stock: 168  
[2026-07-03 19:11:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783098704899"} 
[2026-07-03 19:17:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783099029050","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"31.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T15:09:11.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 19:17:10] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-03 19:17:10] production.INFO: Old stock: 31.00  
[2026-07-03 19:17:10] production.INFO: Quantity deducted: 2  
[2026-07-03 19:17:10] production.INFO: New stock: 29  
[2026-07-03 19:17:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783099029050"} 
[2026-07-03 19:44:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783100672450","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":4,"subtotal":4000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"36.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-30T06:57:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 19:44:32] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-07-03 19:44:32] production.INFO: Old stock: 36.00  
[2026-07-03 19:44:32] production.INFO: Quantity deducted: 4  
[2026-07-03 19:44:32] production.INFO: New stock: 32  
[2026-07-03 19:44:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783100672450"} 
[2026-07-03 20:00:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783101624855","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"29.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T17:17:10.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"25.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-02T17:34:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-03 20:00:26] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-03 20:00:26] production.INFO: Old stock: 29.00  
[2026-07-03 20:00:26] production.INFO: Quantity deducted: 2  
[2026-07-03 20:00:26] production.INFO: New stock: 27  
[2026-07-03 20:00:26] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-03 20:00:26] production.INFO: Old stock: 25.00  
[2026-07-03 20:00:26] production.INFO: Quantity deducted: 1  
[2026-07-03 20:00:26] production.INFO: New stock: 24  
[2026-07-03 20:00:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783101624855"} 
[2026-07-03 20:00:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783101634918","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-29T17:04:39.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 20:00:35] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-07-03 20:00:35] production.INFO: Old stock: 14.00  
[2026-07-03 20:00:35] production.INFO: Quantity deducted: 1  
[2026-07-03 20:00:35] production.INFO: New stock: 13  
[2026-07-03 20:00:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783101634918"} 
[2026-07-03 20:11:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783102288660","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"182.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-01T18:47:24.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 20:11:31] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-03 20:11:31] production.INFO: Old stock: 182.00  
[2026-07-03 20:11:31] production.INFO: Quantity deducted: 2  
[2026-07-03 20:11:31] production.INFO: New stock: 180  
[2026-07-03 20:11:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783102288660"} 
[2026-07-03 20:23:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783103032529","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":632,"product_id":632,"name":"Phenobarbitone 30 mg","sku":"3269","price":"2500.00","selling_price":"2500.00","purchase_price":"1197.00","quantity":1,"subtotal":2500,"product":{"id":632,"name":"Phenobarbitone 30 mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"1197.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"42.00","stock":"49.00","product_type":"Single","tax":null,"sku":"3269","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-16T18:42:25.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 20:23:52] production.INFO: Stock deduction for product: Phenobarbitone 30 mg  
[2026-07-03 20:23:52] production.INFO: Old stock: 42.00  
[2026-07-03 20:23:52] production.INFO: Quantity deducted: 1  
[2026-07-03 20:23:52] production.INFO: New stock: 41  
[2026-07-03 20:23:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783103032529"} 
[2026-07-03 20:41:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783104064228","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":926,"product_id":926,"name":"Parapain","sku":"PRD-00926","price":"400.00","selling_price":"400.00","purchase_price":"184.00","quantity":2,"subtotal":800,"product":{"id":926,"name":"Parapain","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","last_purchase_price":"184.00","selling_price":"400.00","current_stock":"41.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00926","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:57:23.000000Z","updated_at":"2026-07-02T07:51:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 20:41:07] production.INFO: Stock deduction for product: Parapain  
[2026-07-03 20:41:07] production.INFO: Old stock: 41.00  
[2026-07-03 20:41:07] production.INFO: Quantity deducted: 2  
[2026-07-03 20:41:07] production.INFO: New stock: 39  
[2026-07-03 20:41:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783104064228"} 
[2026-07-03 20:54:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783104864401","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"97.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T09:42:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-03 20:54:26] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-03 20:54:26] production.INFO: Old stock: 97.00  
[2026-07-03 20:54:26] production.INFO: Quantity deducted: 1  
[2026-07-03 20:54:26] production.INFO: New stock: 96  
[2026-07-03 20:54:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783104864401"} 
[2026-07-04 08:53:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783147989841","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","sku":"0774","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0774","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-27T12:16:43.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-07-02T17:43:24.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 08:53:11] production.INFO: Stock deduction for product: DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)  
[2026-07-04 08:53:11] production.INFO: Old stock: 9.00  
[2026-07-04 08:53:11] production.INFO: Quantity deducted: 1  
[2026-07-04 08:53:11] production.INFO: New stock: 8  
[2026-07-04 08:53:11] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-07-04 08:53:11] production.INFO: Old stock: 4.00  
[2026-07-04 08:53:11] production.INFO: Quantity deducted: 1  
[2026-07-04 08:53:11] production.INFO: New stock: 3  
[2026-07-04 08:53:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783147989841"} 
[2026-07-04 09:04:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783148679630","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":56,"product_id":56,"name":"AMINOPHYLLIN 100MG TABLETS","sku":"0670","price":"1500.00","selling_price":"1500.00","purchase_price":"1139.00","quantity":1,"subtotal":1500,"product":{"id":56,"name":"AMINOPHYLLIN 100MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"28","category_id":"39","brand_id":"12","supplier_id":null,"purchase_price":"1139.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0670","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-28T16:22:55.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 09:04:41] production.INFO: Stock deduction for product: AMINOPHYLLIN 100MG TABLETS  
[2026-07-04 09:04:41] production.INFO: Old stock: 1.00  
[2026-07-04 09:04:41] production.INFO: Quantity deducted: 1  
[2026-07-04 09:04:41] production.INFO: New stock: 0  
[2026-07-04 09:04:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783148679630"} 
[2026-07-04 09:11:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783149080060","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"26.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T15:08:11.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 09:11:21] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-04 09:11:21] production.INFO: Old stock: 26.00  
[2026-07-04 09:11:21] production.INFO: Quantity deducted: 1  
[2026-07-04 09:11:21] production.INFO: New stock: 25  
[2026-07-04 09:11:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783149080060"} 
[2026-07-04 09:33:29] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783150409510","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"165.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T09:04:20.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":1,"subtotal":3500,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"5.00","stock":"40.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-29T15:46:11.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 09:33:29] production.INFO: Stock deduction for product: HEDAX  
[2026-07-04 09:33:29] production.INFO: Old stock: 165.00  
[2026-07-04 09:33:29] production.INFO: Quantity deducted: 2  
[2026-07-04 09:33:29] production.INFO: New stock: 163  
[2026-07-04 09:33:29] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-07-04 09:33:29] production.INFO: Old stock: 5.00  
[2026-07-04 09:33:29] production.INFO: Quantity deducted: 1  
[2026-07-04 09:33:29] production.INFO: New stock: 4  
[2026-07-04 09:33:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783150409510"} 
[2026-07-04 09:35:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783150502525","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"96.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T18:54:26.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 09:35:03] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-04 09:35:03] production.INFO: Old stock: 96.00  
[2026-07-04 09:35:03] production.INFO: Quantity deducted: 1  
[2026-07-04 09:35:03] production.INFO: New stock: 95  
[2026-07-04 09:35:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783150502525"} 
[2026-07-04 10:19:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783153171936","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":834,"product_id":834,"name":"Insulin Syring","sku":"PRD-00834","price":"500.00","selling_price":"500.00","purchase_price":"150.00","quantity":10,"subtotal":5000,"product":{"id":834,"name":"Insulin Syring","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"500.00","current_stock":"100.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00834","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-13","created_at":"2026-04-13T11:58:22.000000Z","updated_at":"2026-04-13T11:58:22.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 10:19:33] production.INFO: Stock deduction for product: Insulin Syring  
[2026-07-04 10:19:33] production.INFO: Old stock: 100.00  
[2026-07-04 10:19:33] production.INFO: Quantity deducted: 10  
[2026-07-04 10:19:33] production.INFO: New stock: 90  
[2026-07-04 10:19:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783153171936"} 
[2026-07-04 10:21:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783153304743","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"24.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-03T18:00:26.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 10:21:45] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-04 10:21:45] production.INFO: Old stock: 24.00  
[2026-07-04 10:21:45] production.INFO: Quantity deducted: 1  
[2026-07-04 10:21:45] production.INFO: New stock: 23  
[2026-07-04 10:21:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783153304743"} 
[2026-07-04 10:48:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783154893375","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-02T18:06:00.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 10:48:14] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-04 10:48:14] production.INFO: Old stock: 48.00  
[2026-07-04 10:48:14] production.INFO: Quantity deducted: 1  
[2026-07-04 10:48:14] production.INFO: New stock: 47  
[2026-07-04 10:48:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783154893375"} 
[2026-07-04 11:36:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783157809354","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":868,"product_id":868,"name":"Omeprazole (Omecos)","sku":"PRD-00868","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":868,"name":"Omeprazole (Omecos)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00868","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-05-04","created_at":"2026-05-04T06:11:18.000000Z","updated_at":"2026-07-02T17:00:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"101.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T12:04:26.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-04 11:36:50] production.INFO: Stock deduction for product: Omeprazole (Omecos)  
[2026-07-04 11:36:50] production.INFO: Old stock: 7.00  
[2026-07-04 11:36:50] production.INFO: Quantity deducted: 1  
[2026-07-04 11:36:50] production.INFO: New stock: 6  
[2026-07-04 11:36:50] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-04 11:36:50] production.INFO: Old stock: 101.00  
[2026-07-04 11:36:50] production.INFO: Quantity deducted: 1  
[2026-07-04 11:36:50] production.INFO: New stock: 100  
[2026-07-04 11:36:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783157809354"} 
[2026-07-04 11:41:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783158080415","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"17.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-02T09:27:12.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 11:41:21] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-04 11:41:21] production.INFO: Old stock: 17.00  
[2026-07-04 11:41:21] production.INFO: Quantity deducted: 1  
[2026-07-04 11:41:21] production.INFO: New stock: 16  
[2026-07-04 11:41:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783158080415"} 
[2026-07-04 11:51:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783158689724","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Ashwaganda","sku":"1259","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":82,"name":"Ashwaganda","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"16.00","stock":"20.00","product_type":"Single","tax":null,"sku":"1259","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-23","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-02T06:46:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 11:51:31] production.INFO: Stock deduction for product: Ashwaganda  
[2026-07-04 11:51:31] production.INFO: Old stock: 16.00  
[2026-07-04 11:51:31] production.INFO: Quantity deducted: 1  
[2026-07-04 11:51:31] production.INFO: New stock: 15  
[2026-07-04 11:51:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783158689724"} 
[2026-07-04 11:53:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783158786684","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"32.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-01T17:49:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 11:53:08] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-04 11:53:08] production.INFO: Old stock: 32.00  
[2026-07-04 11:53:08] production.INFO: Quantity deducted: 1  
[2026-07-04 11:53:08] production.INFO: New stock: 31  
[2026-07-04 11:53:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783158786684"} 
[2026-07-04 12:07:11] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783159630264","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":716,"product_id":716,"name":"TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)","sku":"3353","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":2,"subtotal":20000,"product":{"id":716,"name":"TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3353","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-15T11:56:58.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":624,"product_id":624,"name":"Pantoprazole (Pantin 40mg)","sku":"3261","price":"6000.00","selling_price":"6000.00","purchase_price":"2900.00","quantity":1,"subtotal":6000,"product":{"id":624,"name":"Pantoprazole (Pantin 40mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"2900.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3261","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T16:09:48.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:07:11] production.INFO: Stock deduction for product: TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)  
[2026-07-04 12:07:11] production.INFO: Old stock: 6.00  
[2026-07-04 12:07:11] production.INFO: Quantity deducted: 2  
[2026-07-04 12:07:11] production.INFO: New stock: 4  
[2026-07-04 12:07:11] production.INFO: Stock deduction for product: Pantoprazole (Pantin 40mg)  
[2026-07-04 12:07:11] production.INFO: Old stock: 7.00  
[2026-07-04 12:07:11] production.INFO: Quantity deducted: 1  
[2026-07-04 12:07:11] production.INFO: New stock: 6  
[2026-07-04 12:07:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783159630264"} 
[2026-07-04 12:07:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783159662288","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","sku":"0774","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"8.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0774","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-04T06:53:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:07:42] production.INFO: Stock deduction for product: DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)  
[2026-07-04 12:07:42] production.INFO: Old stock: 8.00  
[2026-07-04 12:07:42] production.INFO: Quantity deducted: 1  
[2026-07-04 12:07:42] production.INFO: New stock: 7  
[2026-07-04 12:07:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783159662288"} 
[2026-07-04 12:08:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783159738591","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":616,"product_id":616,"name":"ORS (CORS)","sku":"3253","price":"1000.00","selling_price":"1000.00","purchase_price":"3890.00","quantity":1,"subtotal":1000,"product":{"id":616,"name":"ORS (CORS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"3890.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3253","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T20:50:05.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:08:59] production.INFO: Stock deduction for product: ORS (CORS)  
[2026-07-04 12:08:59] production.INFO: Old stock: 11.00  
[2026-07-04 12:08:59] production.INFO: Quantity deducted: 1  
[2026-07-04 12:08:59] production.INFO: New stock: 10  
[2026-07-04 12:08:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783159738591"} 
[2026-07-04 12:12:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783159973134","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":99,"product_id":99,"name":"BECLOMIN CREAM, 15g","sku":"0695","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":99,"name":"BECLOMIN CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"22.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0695","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-19T09:52:12.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"18.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-07-03T16:57:03.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:12:54] production.INFO: Stock deduction for product: BECLOMIN CREAM, 15g  
[2026-07-04 12:12:54] production.INFO: Old stock: 22.00  
[2026-07-04 12:12:54] production.INFO: Quantity deducted: 1  
[2026-07-04 12:12:54] production.INFO: New stock: 21  
[2026-07-04 12:12:54] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-04 12:12:54] production.INFO: Old stock: 18.00  
[2026-07-04 12:12:54] production.INFO: Quantity deducted: 1  
[2026-07-04 12:12:54] production.INFO: New stock: 17  
[2026-07-04 12:12:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783159973134"} 
[2026-07-04 12:18:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783160318844","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"23.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-24T07:57:41.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:18:40] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-07-04 12:18:40] production.INFO: Old stock: 23.00  
[2026-07-04 12:18:40] production.INFO: Quantity deducted: 1  
[2026-07-04 12:18:40] production.INFO: New stock: 22  
[2026-07-04 12:18:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783160318844"} 
[2026-07-04 12:36:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783161375928","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":267,"product_id":267,"name":"Durex Condom (Extra Dots)","sku":"1360","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":267,"name":"Durex Condom (Extra Dots)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"4.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1360","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-30T15:48:35.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"7.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-01T18:42:41.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:36:16] production.INFO: Stock deduction for product: Durex Condom (Extra Dots)  
[2026-07-04 12:36:16] production.INFO: Old stock: 4.00  
[2026-07-04 12:36:16] production.INFO: Quantity deducted: 1  
[2026-07-04 12:36:16] production.INFO: New stock: 3  
[2026-07-04 12:36:16] production.INFO: Stock deduction for product: HIV Test kit  
[2026-07-04 12:36:16] production.INFO: Old stock: 7.00  
[2026-07-04 12:36:16] production.INFO: Quantity deducted: 2  
[2026-07-04 12:36:16] production.INFO: New stock: 5  
[2026-07-04 12:36:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783161375928"} 
[2026-07-04 12:48:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783162111356","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":179,"product_id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","sku":"0736","price":"4000.00","selling_price":"4000.00","purchase_price":"2240.00","quantity":1,"subtotal":4000,"product":{"id":179,"name":"CIPROLAB-500 (Ciprofloxacin 500mg)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"39","brand_id":"2","supplier_id":null,"purchase_price":"2240.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"44.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0736","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-27T16:57:10.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 12:48:32] production.INFO: Stock deduction for product: CIPROLAB-500 (Ciprofloxacin 500mg)  
[2026-07-04 12:48:32] production.INFO: Old stock: 44.00  
[2026-07-04 12:48:32] production.INFO: Quantity deducted: 1  
[2026-07-04 12:48:32] production.INFO: New stock: 43  
[2026-07-04 12:48:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783162111356"} 
[2026-07-04 13:40:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783165216317","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":1,"subtotal":500,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"278.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T07:21:52.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 13:40:17] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-04 13:40:17] production.INFO: Old stock: 278.00  
[2026-07-04 13:40:17] production.INFO: Quantity deducted: 1  
[2026-07-04 13:40:17] production.INFO: New stock: 277  
[2026-07-04 13:40:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783165216317"} 
[2026-07-04 14:04:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783166692197","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"6.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-02T17:43:24.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 14:04:53] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-07-04 14:04:53] production.INFO: Old stock: 6.00  
[2026-07-04 14:04:53] production.INFO: Quantity deducted: 1  
[2026-07-04 14:04:53] production.INFO: New stock: 5  
[2026-07-04 14:04:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783166692197"} 
[2026-07-04 14:30:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783168238901","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-03T18:00:35.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 14:30:40] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-07-04 14:30:40] production.INFO: Old stock: 13.00  
[2026-07-04 14:30:40] production.INFO: Quantity deducted: 1  
[2026-07-04 14:30:40] production.INFO: New stock: 12  
[2026-07-04 14:30:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783168238901"} 
[2026-07-04 14:32:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783168354789","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":716,"product_id":716,"name":"TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)","sku":"3353","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":3,"subtotal":30000,"product":{"id":716,"name":"TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3353","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T10:07:11.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 14:32:36] production.INFO: Stock deduction for product: TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)  
[2026-07-04 14:32:36] production.INFO: Old stock: 4.00  
[2026-07-04 14:32:36] production.INFO: Quantity deducted: 3  
[2026-07-04 14:32:36] production.INFO: New stock: 1  
[2026-07-04 14:32:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783168354789"} 
[2026-07-04 14:56:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783169787030","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":423,"product_id":423,"name":"Glycerol 4g Suppositories adults","sku":"3060","price":"50000.00","selling_price":"50000.00","purchase_price":"25000.00","quantity":1,"subtotal":50000,"product":{"id":423,"name":"Glycerol 4g Suppositories adults","business_location":"EDUC Pharmacy","unit_id":"71","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"25000.00","last_purchase_price":null,"selling_price":"50000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3060","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-04 14:56:28] production.INFO: Stock deduction for product: Glycerol 4g Suppositories adults  
[2026-07-04 14:56:28] production.INFO: Old stock: 4.00  
[2026-07-04 14:56:28] production.INFO: Quantity deducted: 1  
[2026-07-04 14:56:28] production.INFO: New stock: 3  
[2026-07-04 14:56:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783169787030"} 
[2026-07-04 15:04:57] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783170296292","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"19.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T17:00:56.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"104.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-03T07:10:05.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 15:04:57] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-07-04 15:04:57] production.INFO: Old stock: 19.00  
[2026-07-04 15:04:57] production.INFO: Quantity deducted: 1  
[2026-07-04 15:04:57] production.INFO: New stock: 18  
[2026-07-04 15:04:57] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-04 15:04:57] production.INFO: Old stock: 104.00  
[2026-07-04 15:04:57] production.INFO: Quantity deducted: 1  
[2026-07-04 15:04:57] production.INFO: New stock: 103  
[2026-07-04 15:04:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783170296292"} 
[2026-07-04 15:13:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783170836065","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":819,"product_id":819,"name":"Ondansetron Orally-Vomikind-MD","sku":"PRD-00819","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":819,"name":"Ondansetron Orally-Vomikind-MD","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"7500.00","last_purchase_price":"4500.00","selling_price":"15000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00819","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:51:25.000000Z","updated_at":"2026-05-29T07:20:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 15:13:56] production.INFO: Stock deduction for product: Ondansetron Orally-Vomikind-MD  
[2026-07-04 15:13:56] production.INFO: Old stock: 9.00  
[2026-07-04 15:13:56] production.INFO: Quantity deducted: 1  
[2026-07-04 15:13:56] production.INFO: New stock: 8  
[2026-07-04 15:13:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783170836065"} 
[2026-07-04 15:15:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783170916584","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"103.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-04T13:04:57.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 15:15:18] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-04 15:15:18] production.INFO: Old stock: 103.00  
[2026-07-04 15:15:18] production.INFO: Quantity deducted: 1  
[2026-07-04 15:15:18] production.INFO: New stock: 102  
[2026-07-04 15:15:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783170916584"} 
[2026-07-04 15:25:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783171539798","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":147,"product_id":147,"name":"Cafemol Peads","sku":"1179","price":"300.00","selling_price":"300.00","purchase_price":"79.00","quantity":2,"subtotal":600,"product":{"id":147,"name":"Cafemol Peads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"79.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"42.00","stock":"79.00","product_type":"Single","tax":null,"sku":"1179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-03T16:36:20.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 15:25:41] production.INFO: Stock deduction for product: Cafemol Peads  
[2026-07-04 15:25:41] production.INFO: Old stock: 42.00  
[2026-07-04 15:25:41] production.INFO: Quantity deducted: 2  
[2026-07-04 15:25:41] production.INFO: New stock: 40  
[2026-07-04 15:25:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783171539798"} 
[2026-07-04 16:03:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783173814674","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":716,"product_id":716,"name":"TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)","sku":"3353","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":716,"name":"TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3353","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T12:32:36.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-04 16:03:35] production.INFO: Stock deduction for product: TAMSULOSIN HYDROCHLODRIDECAPSULES USP(WELTAM XL)  
[2026-07-04 16:03:35] production.INFO: Old stock: 1.00  
[2026-07-04 16:03:35] production.INFO: Quantity deducted: 1  
[2026-07-04 16:03:35] production.INFO: New stock: 0  
[2026-07-04 16:03:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783173814674"} 
[2026-07-04 16:09:56] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783174194984","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":215,"product_id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","sku":"0742","price":"4000.00","selling_price":"4000.00","purchase_price":"1980.00","quantity":1,"subtotal":4000,"product":{"id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"19","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1980.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0742","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-27T15:06:40.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":285,"product_id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","sku":"0801","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":285,"name":"EPIDERM CREAM (Triple Action Skin Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"6.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0801","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-02T11:44:06.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 16:09:56] production.INFO: Stock deduction for product: DAWACLOCX (Cloxacillin Oral 125mg/5ml)  
[2026-07-04 16:09:56] production.INFO: Old stock: 3.00  
[2026-07-04 16:09:56] production.INFO: Quantity deducted: 1  
[2026-07-04 16:09:56] production.INFO: New stock: 2  
[2026-07-04 16:09:56] production.INFO: Stock deduction for product: EPIDERM CREAM (Triple Action Skin Cream), 15g  
[2026-07-04 16:09:56] production.INFO: Old stock: 6.00  
[2026-07-04 16:09:56] production.INFO: Quantity deducted: 1  
[2026-07-04 16:09:56] production.INFO: New stock: 5  
[2026-07-04 16:09:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783174194984"} 
[2026-07-04 16:15:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783174506230","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"74.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T18:42:41.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 16:15:07] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-07-04 16:15:07] production.INFO: Old stock: 74.00  
[2026-07-04 16:15:07] production.INFO: Quantity deducted: 1  
[2026-07-04 16:15:07] production.INFO: New stock: 73  
[2026-07-04 16:15:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783174506230"} 
[2026-07-04 16:20:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783174842509","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":2,"subtotal":4000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"114.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T14:16:18.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 16:20:42] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-04 16:20:42] production.INFO: Old stock: 114.00  
[2026-07-04 16:20:42] production.INFO: Quantity deducted: 2  
[2026-07-04 16:20:42] production.INFO: New stock: 112  
[2026-07-04 16:20:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783174842509"} 
[2026-07-04 16:26:35] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783175194123","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11500.00","selling_price":"11500.00","purchase_price":"3500.00","quantity":1,"subtotal":11500,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T19:35:08.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"102.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-04T13:15:18.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"100.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T09:36:50.000000Z","brand":null,"category":null}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"17.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-07-04T10:12:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 16:26:35] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-07-04 16:26:35] production.INFO: Old stock: 14.00  
[2026-07-04 16:26:35] production.INFO: Quantity deducted: 1  
[2026-07-04 16:26:35] production.INFO: New stock: 13  
[2026-07-04 16:26:35] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-04 16:26:35] production.INFO: Old stock: 102.00  
[2026-07-04 16:26:35] production.INFO: Quantity deducted: 1  
[2026-07-04 16:26:35] production.INFO: New stock: 101  
[2026-07-04 16:26:35] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-04 16:26:35] production.INFO: Old stock: 100.00  
[2026-07-04 16:26:35] production.INFO: Quantity deducted: 1  
[2026-07-04 16:26:35] production.INFO: New stock: 99  
[2026-07-04 16:26:35] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-04 16:26:35] production.INFO: Old stock: 17.00  
[2026-07-04 16:26:35] production.INFO: Quantity deducted: 1  
[2026-07-04 16:26:35] production.INFO: New stock: 16  
[2026-07-04 16:26:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783175194123"} 
[2026-07-04 16:30:43] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783175442578","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-01T15:12:43.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"73.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T14:15:07.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"287.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T16:57:03.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 16:30:43] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-07-04 16:30:43] production.INFO: Old stock: 6.00  
[2026-07-04 16:30:43] production.INFO: Quantity deducted: 1  
[2026-07-04 16:30:43] production.INFO: New stock: 5  
[2026-07-04 16:30:43] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-07-04 16:30:43] production.INFO: Old stock: 73.00  
[2026-07-04 16:30:43] production.INFO: Quantity deducted: 1  
[2026-07-04 16:30:43] production.INFO: New stock: 72  
[2026-07-04 16:30:43] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-04 16:30:43] production.INFO: Old stock: 287.00  
[2026-07-04 16:30:43] production.INFO: Quantity deducted: 5  
[2026-07-04 16:30:43] production.INFO: New stock: 282  
[2026-07-04 16:30:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783175442578"} 
[2026-07-04 16:39:13] production.INFO: Stock Adjustment - Initial State {"product_id":"900","previous_quantity":"0.00","previous_selling_price":"2500.00","validated_data":{"product_id":"900","adjustment_type":"add","quantity":"48","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-07-04"}} 
[2026-07-04 16:39:13] production.INFO: Stock Adjustment - After Quantity Save {"product_id":900,"new_quantity":48.0,"current_stock":48.0,"changes_made":"Quantity adjusted"} 
[2026-07-04 16:42:19] production.INFO: Product Store - Request Data {"all_data":{"_token":"GEdnzXS8Dgp26SNw6KjJD382muhoHzyWUDbocItQ","name":"Fexoleb Tab ( Fexofenadine 180mg)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1000.00","selling_price":"3000.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-04 16:42:19] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Fexoleb Tab ( Fexofenadine 180mg)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"3000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-04 16:42:19] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Fexoleb Tab ( Fexofenadine 180mg)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"3000.00","sku":"PRD-00986","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-04 16:42:19"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-04 16:42:19] production.INFO: Product Store - Product Created {"product_id":986,"product_name":"Fexoleb Tab ( Fexofenadine 180mg)","product_sku":"PRD-00986"} 
[2026-07-04 16:53:13] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783176792036","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":372,"product_id":372,"name":"FASTACT GEL, 20g","sku":"3009","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":372,"name":"FASTACT GEL, 20g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"10","supplier_id":null,"purchase_price":"1700.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3009","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-15T11:03:07.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"27.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T18:00:26.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 16:53:13] production.INFO: Stock deduction for product: FASTACT GEL, 20g  
[2026-07-04 16:53:13] production.INFO: Old stock: 2.00  
[2026-07-04 16:53:13] production.INFO: Quantity deducted: 1  
[2026-07-04 16:53:13] production.INFO: New stock: 1  
[2026-07-04 16:53:13] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-04 16:53:13] production.INFO: Old stock: 27.00  
[2026-07-04 16:53:13] production.INFO: Quantity deducted: 1  
[2026-07-04 16:53:13] production.INFO: New stock: 26  
[2026-07-04 16:53:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783176792036"} 
[2026-07-04 17:05:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783177530976","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":551,"product_id":551,"name":"Metformin-Denk 1000","sku":"3188","price":"28000.00","selling_price":"28000.00","purchase_price":"14000.00","quantity":2,"subtotal":56000,"product":{"id":551,"name":"Metformin-Denk 1000","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"14000.00","last_purchase_price":null,"selling_price":"28000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3188","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-03-06T01:09:26.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"33.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T06:54:56.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 17:05:31] production.INFO: Stock deduction for product: Metformin-Denk 1000  
[2026-07-04 17:05:31] production.INFO: Old stock: 4.00  
[2026-07-04 17:05:31] production.INFO: Quantity deducted: 2  
[2026-07-04 17:05:31] production.INFO: New stock: 2  
[2026-07-04 17:05:31] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-07-04 17:05:31] production.INFO: Old stock: 33.00  
[2026-07-04 17:05:31] production.INFO: Quantity deducted: 1  
[2026-07-04 17:05:31] production.INFO: New stock: 32  
[2026-07-04 17:05:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783177530976"} 
[2026-07-04 17:11:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783177877958","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"95.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T07:35:03.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 17:11:18] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-04 17:11:18] production.INFO: Old stock: 95.00  
[2026-07-04 17:11:18] production.INFO: Quantity deducted: 2  
[2026-07-04 17:11:18] production.INFO: New stock: 93  
[2026-07-04 17:11:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783177877958"} 
[2026-07-04 17:26:48] production.INFO: Product Store - Request Data {"all_data":{"_token":"uE9Q5lKt3ZnVmjGo16IkT4oiL9zm1bYx9E6r5321","name":"Flucanazole Capsules (Flutrox -200)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4250.00","selling_price":"8500.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-04 17:26:48] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Flucanazole Capsules (Flutrox -200)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","selling_price":"8500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-04 17:26:48] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Flucanazole Capsules (Flutrox -200)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","selling_price":"8500.00","sku":"PRD-00987","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"4250.00","last_purchase_date":"2026-07-04 17:26:48"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-04 17:26:48] production.INFO: Product Store - Product Created {"product_id":987,"product_name":"Flucanazole Capsules (Flutrox -200)","product_sku":"PRD-00987"} 
[2026-07-04 17:44:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783179862510","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T17:00:56.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 17:44:24] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-04 17:44:24] production.INFO: Old stock: 13.00  
[2026-07-04 17:44:24] production.INFO: Quantity deducted: 1  
[2026-07-04 17:44:24] production.INFO: New stock: 12  
[2026-07-04 17:44:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783179862510"} 
[2026-07-04 17:54:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783180463707","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"8.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-01T15:33:33.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-04 17:54:25] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-07-04 17:54:25] production.INFO: Old stock: 8.00  
[2026-07-04 17:54:25] production.INFO: Quantity deducted: 1  
[2026-07-04 17:54:25] production.INFO: New stock: 7  
[2026-07-04 17:54:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783180463707"} 
[2026-07-04 17:57:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783180629981","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T15:44:24.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-04 17:57:12] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-04 17:57:12] production.INFO: Old stock: 12.00  
[2026-07-04 17:57:12] production.INFO: Quantity deducted: 1  
[2026-07-04 17:57:12] production.INFO: New stock: 11  
[2026-07-04 17:57:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783180629981"} 
[2026-07-04 17:59:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783180783420","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"282.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T14:30:43.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 17:59:43] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-04 17:59:43] production.INFO: Old stock: 282.00  
[2026-07-04 17:59:43] production.INFO: Quantity deducted: 5  
[2026-07-04 17:59:43] production.INFO: New stock: 277  
[2026-07-04 17:59:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783180783420"} 
[2026-07-04 18:21:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783182091889","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":148,"product_id":148,"name":"CALAMINE LOTION 100ML","sku":"0716","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":148,"name":"CALAMINE LOTION 100ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0716","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-01T18:58:57.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"168.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T17:11:45.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 18:21:33] production.INFO: Stock deduction for product: CALAMINE LOTION 100ML  
[2026-07-04 18:21:33] production.INFO: Old stock: 9.00  
[2026-07-04 18:21:33] production.INFO: Quantity deducted: 1  
[2026-07-04 18:21:33] production.INFO: New stock: 8  
[2026-07-04 18:21:33] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-04 18:21:33] production.INFO: Old stock: 168.00  
[2026-07-04 18:21:33] production.INFO: Quantity deducted: 1  
[2026-07-04 18:21:33] production.INFO: New stock: 167  
[2026-07-04 18:21:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783182091889"} 
[2026-07-04 18:57:51] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783184269605","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"112.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T14:20:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"54.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T15:08:11.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"99.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T14:26:35.000000Z","brand":null,"category":null}}],"payment_method":"airtel_money"}} 
[2026-07-04 18:57:51] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-04 18:57:51] production.INFO: Old stock: 112.00  
[2026-07-04 18:57:51] production.INFO: Quantity deducted: 1  
[2026-07-04 18:57:51] production.INFO: New stock: 111  
[2026-07-04 18:57:51] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-04 18:57:51] production.INFO: Old stock: 54.00  
[2026-07-04 18:57:51] production.INFO: Quantity deducted: 1  
[2026-07-04 18:57:51] production.INFO: New stock: 53  
[2026-07-04 18:57:51] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-04 18:57:51] production.INFO: Old stock: 99.00  
[2026-07-04 18:57:51] production.INFO: Quantity deducted: 1  
[2026-07-04 18:57:51] production.INFO: New stock: 98  
[2026-07-04 18:57:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783184269605"} 
[2026-07-04 19:17:23] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783185442415","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"33.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T08:41:03.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"277.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T15:59:43.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 19:17:23] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-04 19:17:23] production.INFO: Old stock: 33.00  
[2026-07-04 19:17:23] production.INFO: Quantity deducted: 1  
[2026-07-04 19:17:23] production.INFO: New stock: 32  
[2026-07-04 19:17:23] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-04 19:17:23] production.INFO: Old stock: 277.00  
[2026-07-04 19:17:23] production.INFO: Quantity deducted: 5  
[2026-07-04 19:17:23] production.INFO: New stock: 272  
[2026-07-04 19:17:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783185442415"} 
[2026-07-04 19:20:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783185637766","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":748,"product_id":748,"name":"Vagid CL Pessary","sku":"3385","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":748,"name":"Vagid CL Pessary","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"4.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3385","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T14:33:10.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-04 19:20:39] production.INFO: Stock deduction for product: Vagid CL Pessary  
[2026-07-04 19:20:39] production.INFO: Old stock: 4.00  
[2026-07-04 19:20:39] production.INFO: Quantity deducted: 1  
[2026-07-04 19:20:39] production.INFO: New stock: 3  
[2026-07-04 19:20:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783185637766"} 
[2026-07-04 19:48:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783187291333","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"111.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T16:57:51.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 19:48:11] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-04 19:48:11] production.INFO: Old stock: 111.00  
[2026-07-04 19:48:11] production.INFO: Quantity deducted: 1  
[2026-07-04 19:48:11] production.INFO: New stock: 110  
[2026-07-04 19:48:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783187291333"} 
[2026-07-04 20:10:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783188627662","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"265.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T16:57:03.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 20:10:27] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-04 20:10:27] production.INFO: Old stock: 265.00  
[2026-07-04 20:10:27] production.INFO: Quantity deducted: 1  
[2026-07-04 20:10:27] production.INFO: New stock: 264  
[2026-07-04 20:10:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783188627662"} 
[2026-07-04 20:16:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783188960404","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"3000.00","selling_price":"3000.00","purchase_price":"1250.00","quantity":1,"subtotal":3000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"3000.00","current_stock":"48.00","stock":"48.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":"2026-07-04","last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-07-04T14:39:13.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 20:16:02] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-07-04 20:16:02] production.INFO: Old stock: 48.00  
[2026-07-04 20:16:02] production.INFO: Quantity deducted: 1  
[2026-07-04 20:16:02] production.INFO: New stock: 47  
[2026-07-04 20:16:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783188960404"} 
[2026-07-04 20:37:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783190239118","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"59.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T19:53:56.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 20:37:19] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-04 20:37:19] production.INFO: Old stock: 59.00  
[2026-07-04 20:37:19] production.INFO: Quantity deducted: 1  
[2026-07-04 20:37:19] production.INFO: New stock: 58  
[2026-07-04 20:37:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783190239118"} 
[2026-07-04 20:39:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783190384965","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"58.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-04T18:37:53.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-04 20:39:45] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-04 20:39:45] production.INFO: Old stock: 58.00  
[2026-07-04 20:39:45] production.INFO: Quantity deducted: 1  
[2026-07-04 20:39:45] production.INFO: New stock: 57  
[2026-07-04 20:39:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783190384965"} 
[2026-07-04 20:58:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783191495863","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"264.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T18:10:27.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-04 20:58:16] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-04 20:58:16] production.INFO: Old stock: 264.00  
[2026-07-04 20:58:16] production.INFO: Quantity deducted: 3  
[2026-07-04 20:58:16] production.INFO: New stock: 261  
[2026-07-04 20:58:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783191495863"} 
[2026-07-05 09:51:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783237861921","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":3,"subtotal":2400,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"104.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-02T09:27:12.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 09:51:02] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-05 09:51:02] production.INFO: Old stock: 104.00  
[2026-07-05 09:51:02] production.INFO: Quantity deducted: 3  
[2026-07-05 09:51:02] production.INFO: New stock: 101  
[2026-07-05 09:51:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783237861921"} 
[2026-07-05 09:51:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783237876264","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"25.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T07:11:21.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 09:51:16] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-05 09:51:16] production.INFO: Old stock: 25.00  
[2026-07-05 09:51:16] production.INFO: Quantity deducted: 1  
[2026-07-05 09:51:16] production.INFO: New stock: 24  
[2026-07-05 09:51:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783237876264"} 
[2026-07-05 09:51:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783237907736","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"277.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T11:40:17.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"82.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-02T11:00:45.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 09:51:47] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-05 09:51:47] production.INFO: Old stock: 277.00  
[2026-07-05 09:51:47] production.INFO: Quantity deducted: 4  
[2026-07-05 09:51:47] production.INFO: New stock: 273  
[2026-07-05 09:51:47] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-05 09:51:47] production.INFO: Old stock: 82.00  
[2026-07-05 09:51:47] production.INFO: Quantity deducted: 1  
[2026-07-05 09:51:47] production.INFO: New stock: 81  
[2026-07-05 09:51:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783237907736"} 
[2026-07-05 10:40:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783240800626","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"106.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-01T09:26:15.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 10:40:02] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-05 10:40:02] production.INFO: Old stock: 106.00  
[2026-07-05 10:40:02] production.INFO: Quantity deducted: 1  
[2026-07-05 10:40:02] production.INFO: New stock: 105  
[2026-07-05 10:40:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783240800626"} 
[2026-07-05 10:43:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783240991882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"72.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T14:30:43.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 10:43:12] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-07-05 10:43:12] production.INFO: Old stock: 72.00  
[2026-07-05 10:43:12] production.INFO: Quantity deducted: 1  
[2026-07-05 10:43:12] production.INFO: New stock: 71  
[2026-07-05 10:43:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783240991882"} 
[2026-07-05 11:25:03] production.INFO: Finalize sale attempt {"cart_items":6,"request_data":{"invoice_no":"INV-1783243502764","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-02T15:14:15.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T15:14:15.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":1,"subtotal":500,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"39.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-17T10:19:49.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"101.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T07:51:02.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"16.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T09:41:21.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"101.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-04T14:26:35.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 11:25:03] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-07-05 11:25:03] production.INFO: Old stock: 11.00  
[2026-07-05 11:25:03] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:03] production.INFO: New stock: 10  
[2026-07-05 11:25:03] production.INFO: Stock deduction for product: Water for Injection  
[2026-07-05 11:25:03] production.INFO: Old stock: 17.00  
[2026-07-05 11:25:03] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:03] production.INFO: New stock: 16  
[2026-07-05 11:25:03] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-07-05 11:25:03] production.INFO: Old stock: 39.00  
[2026-07-05 11:25:03] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:03] production.INFO: New stock: 38  
[2026-07-05 11:25:03] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-05 11:25:03] production.INFO: Old stock: 101.00  
[2026-07-05 11:25:03] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:03] production.INFO: New stock: 100  
[2026-07-05 11:25:03] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-05 11:25:03] production.INFO: Old stock: 16.00  
[2026-07-05 11:25:03] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:03] production.INFO: New stock: 15  
[2026-07-05 11:25:03] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-05 11:25:03] production.INFO: Old stock: 101.00  
[2026-07-05 11:25:03] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:03] production.INFO: New stock: 100  
[2026-07-05 11:25:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783243502764"} 
[2026-07-05 11:25:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783243538715","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":561,"product_id":561,"name":"MICLOCIN CREAM (Miconazole, Clobetasol, Gentamicin), 15g","sku":"3198","price":"5500.00","selling_price":"5500.00","purchase_price":"2250.00","quantity":1,"subtotal":5500,"product":{"id":561,"name":"MICLOCIN CREAM (Miconazole, Clobetasol, Gentamicin), 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"10","supplier_id":null,"purchase_price":"2250.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3198","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T14:56:45.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 11:25:38] production.INFO: Stock deduction for product: MICLOCIN CREAM (Miconazole, Clobetasol, Gentamicin), 15g  
[2026-07-05 11:25:38] production.INFO: Old stock: 5.00  
[2026-07-05 11:25:38] production.INFO: Quantity deducted: 1  
[2026-07-05 11:25:38] production.INFO: New stock: 4  
[2026-07-05 11:25:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783243538715"} 
[2026-07-05 11:26:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783243564907","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"6.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T14:32:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-01T14:14:50.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":7,"subtotal":1400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"272.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T17:17:23.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 11:26:05] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-07-05 11:26:05] production.INFO: Old stock: 6.00  
[2026-07-05 11:26:05] production.INFO: Quantity deducted: 1  
[2026-07-05 11:26:05] production.INFO: New stock: 5  
[2026-07-05 11:26:05] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-07-05 11:26:05] production.INFO: Old stock: 54.00  
[2026-07-05 11:26:05] production.INFO: Quantity deducted: 1  
[2026-07-05 11:26:05] production.INFO: New stock: 53  
[2026-07-05 11:26:05] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-05 11:26:05] production.INFO: Old stock: 272.00  
[2026-07-05 11:26:05] production.INFO: Quantity deducted: 7  
[2026-07-05 11:26:05] production.INFO: New stock: 265  
[2026-07-05 11:26:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783243564907"} 
[2026-07-05 11:29:05] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783243743731","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":4,"subtotal":6000,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"93.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T13:21:27.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":644,"product_id":644,"name":"POLYGEL SUSPENSION 200ML","sku":"3281","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":644,"name":"POLYGEL SUSPENSION 200ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3281","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T11:10:33.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 11:29:05] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-05 11:29:05] production.INFO: Old stock: 93.00  
[2026-07-05 11:29:05] production.INFO: Quantity deducted: 4  
[2026-07-05 11:29:05] production.INFO: New stock: 89  
[2026-07-05 11:29:05] production.INFO: Stock deduction for product: POLYGEL SUSPENSION 200ML  
[2026-07-05 11:29:05] production.INFO: Old stock: 6.00  
[2026-07-05 11:29:05] production.INFO: Quantity deducted: 1  
[2026-07-05 11:29:05] production.INFO: New stock: 5  
[2026-07-05 11:29:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783243743731"} 
[2026-07-05 11:35:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783244119462","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"26.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-04T14:53:13.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 11:35:21] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-05 11:35:21] production.INFO: Old stock: 26.00  
[2026-07-05 11:35:21] production.INFO: Quantity deducted: 1  
[2026-07-05 11:35:21] production.INFO: New stock: 25  
[2026-07-05 11:35:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783244119462"} 
[2026-07-05 12:07:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783246069242","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":2,"subtotal":5000,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"24.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T07:51:16.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 12:07:52] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-05 12:07:52] production.INFO: Old stock: 24.00  
[2026-07-05 12:07:52] production.INFO: Quantity deducted: 2  
[2026-07-05 12:07:52] production.INFO: New stock: 22  
[2026-07-05 12:07:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783246069242"} 
[2026-07-05 12:22:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783246963157","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":755,"product_id":755,"name":"Vitamin B Complex","sku":"3392","price":"1000.00","selling_price":"1000.00","purchase_price":"242.00","quantity":1,"subtotal":1000,"product":{"id":755,"name":"Vitamin B Complex","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"242.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3392","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-02T17:12:33.000000Z","brand":null,"category":null}},{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"5.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T10:36:16.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 12:22:46] production.INFO: Stock deduction for product: Vitamin B Complex  
[2026-07-05 12:22:46] production.INFO: Old stock: 10.00  
[2026-07-05 12:22:46] production.INFO: Quantity deducted: 1  
[2026-07-05 12:22:46] production.INFO: New stock: 9  
[2026-07-05 12:22:46] production.INFO: Stock deduction for product: HIV Test kit  
[2026-07-05 12:22:46] production.INFO: Old stock: 5.00  
[2026-07-05 12:22:46] production.INFO: Quantity deducted: 1  
[2026-07-05 12:22:46] production.INFO: New stock: 4  
[2026-07-05 12:22:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783246963157"} 
[2026-07-05 12:50:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783248657517","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":2,"subtotal":2000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"167.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T16:21:33.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 12:50:59] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-05 12:50:59] production.INFO: Old stock: 167.00  
[2026-07-05 12:50:59] production.INFO: Quantity deducted: 2  
[2026-07-05 12:50:59] production.INFO: New stock: 165  
[2026-07-05 12:50:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783248657517"} 
[2026-07-05 13:33:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783251222574","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"22.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T10:07:52.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 13:33:45] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-05 13:33:45] production.INFO: Old stock: 22.00  
[2026-07-05 13:33:45] production.INFO: Quantity deducted: 1  
[2026-07-05 13:33:45] production.INFO: New stock: 21  
[2026-07-05 13:33:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783251222574"} 
[2026-07-05 13:55:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783252501208","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"25.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T09:35:21.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 13:55:03] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-05 13:55:03] production.INFO: Old stock: 25.00  
[2026-07-05 13:55:03] production.INFO: Quantity deducted: 2  
[2026-07-05 13:55:03] production.INFO: New stock: 23  
[2026-07-05 13:55:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783252501208"} 
[2026-07-05 13:56:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783252579039","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"71.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T08:43:12.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 13:56:22] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-07-05 13:56:22] production.INFO: Old stock: 71.00  
[2026-07-05 13:56:22] production.INFO: Quantity deducted: 1  
[2026-07-05 13:56:22] production.INFO: New stock: 70  
[2026-07-05 13:56:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783252579039"} 
[2026-07-05 14:01:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783252879438","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":953,"product_id":953,"name":"Larycol Loz Antibacterial Action","sku":"PRD-00953","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":953,"name":"Larycol Loz Antibacterial Action","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00953","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:57:55.000000Z","updated_at":"2026-07-02T20:57:55.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 14:01:20] production.INFO: Stock deduction for product: Larycol Loz Antibacterial Action  
[2026-07-05 14:01:20] production.INFO: Old stock: 10.00  
[2026-07-05 14:01:20] production.INFO: Quantity deducted: 1  
[2026-07-05 14:01:20] production.INFO: New stock: 9  
[2026-07-05 14:01:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783252879438"} 
[2026-07-05 14:31:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783254698798","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"261.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T18:58:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 14:31:39] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-05 14:31:39] production.INFO: Old stock: 261.00  
[2026-07-05 14:31:39] production.INFO: Quantity deducted: 1  
[2026-07-05 14:31:39] production.INFO: New stock: 260  
[2026-07-05 14:31:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783254698798"} 
[2026-07-05 14:44:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783255444285","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"23.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T11:55:03.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 14:44:04] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-05 14:44:04] production.INFO: Old stock: 23.00  
[2026-07-05 14:44:04] production.INFO: Quantity deducted: 1  
[2026-07-05 14:44:04] production.INFO: New stock: 22  
[2026-07-05 14:44:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783255444285"} 
[2026-07-05 15:20:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783257619493","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":2,"subtotal":2000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T13:18:34.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 15:20:20] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-07-05 15:20:20] production.INFO: Old stock: 19.00  
[2026-07-05 15:20:20] production.INFO: Quantity deducted: 2  
[2026-07-05 15:20:20] production.INFO: New stock: 17  
[2026-07-05 15:20:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783257619493"} 
[2026-07-05 15:31:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783258271850","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T09:26:05.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 15:31:11] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-07-05 15:31:11] production.INFO: Old stock: 53.00  
[2026-07-05 15:31:11] production.INFO: Quantity deducted: 1  
[2026-07-05 15:31:11] production.INFO: New stock: 52  
[2026-07-05 15:31:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783258271850"} 
[2026-07-05 15:36:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783258586481","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5500.00","selling_price":"5500.00","purchase_price":"2700.00","quantity":1,"subtotal":5500,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"7.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T15:04:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"83.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-02T17:22:33.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 15:36:25] production.INFO: Stock deduction for product: PregStream  
[2026-07-05 15:36:25] production.INFO: Old stock: 7.00  
[2026-07-05 15:36:25] production.INFO: Quantity deducted: 1  
[2026-07-05 15:36:25] production.INFO: New stock: 6  
[2026-07-05 15:36:25] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-07-05 15:36:25] production.INFO: Old stock: 83.00  
[2026-07-05 15:36:25] production.INFO: Quantity deducted: 1  
[2026-07-05 15:36:25] production.INFO: New stock: 82  
[2026-07-05 15:36:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783258586481"} 
[2026-07-05 15:48:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783259304830","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"93.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T15:11:18.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 15:48:25] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 15:48:25] production.INFO: Old stock: 93.00  
[2026-07-05 15:48:25] production.INFO: Quantity deducted: 1  
[2026-07-05 15:48:25] production.INFO: New stock: 92  
[2026-07-05 15:48:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783259304830"} 
[2026-07-05 15:55:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783259712021","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"23.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T12:45:27.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 15:55:11] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-05 15:55:11] production.INFO: Old stock: 23.00  
[2026-07-05 15:55:11] production.INFO: Quantity deducted: 1  
[2026-07-05 15:55:11] production.INFO: New stock: 22  
[2026-07-05 15:55:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783259712021"} 
[2026-07-05 16:00:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783260003083","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":202,"product_id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","sku":"0763","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"3.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0763","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-02T17:32:42.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 16:00:03] production.INFO: Stock deduction for product: DACOF PEADEATRIC SYRUP, 100ml  
[2026-07-05 16:00:03] production.INFO: Old stock: 3.00  
[2026-07-05 16:00:03] production.INFO: Quantity deducted: 1  
[2026-07-05 16:00:03] production.INFO: New stock: 2  
[2026-07-05 16:00:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783260003083"} 
[2026-07-05 16:09:40] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783260580050","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":934,"product_id":934,"name":"Cetrizine Syrup (Oncet)","sku":"PRD-00934","price":"5000.00","selling_price":"5000.00","purchase_price":"2350.00","quantity":1,"subtotal":5000,"product":{"id":934,"name":"Cetrizine Syrup (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","last_purchase_price":"2350.00","selling_price":"5000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00934","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:01:39.000000Z","updated_at":"2026-07-02T20:01:39.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"13.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-30T15:17:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"31.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-04T09:53:08.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 16:09:41] production.INFO: Stock deduction for product: Cetrizine Syrup (Oncet)  
[2026-07-05 16:09:41] production.INFO: Old stock: 5.00  
[2026-07-05 16:09:41] production.INFO: Quantity deducted: 1  
[2026-07-05 16:09:41] production.INFO: New stock: 4  
[2026-07-05 16:09:41] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-07-05 16:09:41] production.INFO: Old stock: 13.00  
[2026-07-05 16:09:41] production.INFO: Quantity deducted: 1  
[2026-07-05 16:09:41] production.INFO: New stock: 12  
[2026-07-05 16:09:41] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-05 16:09:41] production.INFO: Old stock: 31.00  
[2026-07-05 16:09:41] production.INFO: Quantity deducted: 1  
[2026-07-05 16:09:41] production.INFO: New stock: 30  
[2026-07-05 16:09:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783260580050"} 
[2026-07-05 17:10:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783264224140","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"159.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T16:05:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 17:10:25] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-05 17:10:25] production.INFO: Old stock: 159.00  
[2026-07-05 17:10:25] production.INFO: Quantity deducted: 1  
[2026-07-05 17:10:25] production.INFO: New stock: 158  
[2026-07-05 17:10:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783264224140"} 
[2026-07-05 17:33:45] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783265624015","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":651,"product_id":651,"name":"PREGABALINE 75MG(NERVILIN)","sku":"3288","price":"8000.00","selling_price":"8000.00","purchase_price":"2500.00","quantity":2,"subtotal":16000,"product":{"id":651,"name":"PREGABALINE 75MG(NERVILIN)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"6.00","stock":"9.00","product_type":"Single","tax":null,"sku":"3288","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-24T16:54:31.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":975,"product_id":975,"name":"G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)","sku":"PRD-00975","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":975,"name":"G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00975","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T15:11:12.000000Z","updated_at":"2026-07-03T15:11:12.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 17:33:45] production.INFO: Stock deduction for product: PREGABALINE 75MG(NERVILIN)  
[2026-07-05 17:33:45] production.INFO: Old stock: 6.00  
[2026-07-05 17:33:45] production.INFO: Quantity deducted: 2  
[2026-07-05 17:33:45] production.INFO: New stock: 4  
[2026-07-05 17:33:45] production.INFO: Stock deduction for product: G-Cof Lozenges (Probiotic & Prebiotic with Zinc Oral Suspension)  
[2026-07-05 17:33:45] production.INFO: Old stock: 24.00  
[2026-07-05 17:33:45] production.INFO: Quantity deducted: 1  
[2026-07-05 17:33:45] production.INFO: New stock: 23  
[2026-07-05 17:33:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783265624015"} 
[2026-07-05 17:37:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783265857526","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":907,"product_id":907,"name":"Amoxicillin Syrup (Crocillin)","sku":"PRD-00907","price":"5500.00","selling_price":"5500.00","purchase_price":"2600.00","quantity":1,"subtotal":5500,"product":{"id":907,"name":"Amoxicillin Syrup (Crocillin)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2600.00","last_purchase_price":"2600.00","selling_price":"5500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00907","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-10","created_at":"2026-06-10T10:34:01.000000Z","updated_at":"2026-07-03T16:36:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 17:37:38] production.INFO: Stock deduction for product: Amoxicillin Syrup (Crocillin)  
[2026-07-05 17:37:38] production.INFO: Old stock: 7.00  
[2026-07-05 17:37:38] production.INFO: Quantity deducted: 1  
[2026-07-05 17:37:38] production.INFO: New stock: 6  
[2026-07-05 17:37:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783265857526"} 
[2026-07-05 17:41:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783266062733","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":949,"product_id":949,"name":"Osteo Plus Tab","sku":"PRD-00949","price":"9000.00","selling_price":"9000.00","purchase_price":"3850.00","quantity":1,"subtotal":9000,"product":{"id":949,"name":"Osteo Plus Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3850.00","last_purchase_price":"3850.00","selling_price":"9000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00949","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:46:22.000000Z","updated_at":"2026-07-02T20:46:22.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 17:41:02] production.INFO: Stock deduction for product: Osteo Plus Tab  
[2026-07-05 17:41:02] production.INFO: Old stock: 2.00  
[2026-07-05 17:41:02] production.INFO: Quantity deducted: 1  
[2026-07-05 17:41:02] production.INFO: New stock: 1  
[2026-07-05 17:41:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783266062733"} 
[2026-07-05 17:41:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783266076892","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"105.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T08:40:02.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 17:41:16] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-05 17:41:16] production.INFO: Old stock: 105.00  
[2026-07-05 17:41:16] production.INFO: Quantity deducted: 1  
[2026-07-05 17:41:16] production.INFO: New stock: 104  
[2026-07-05 17:41:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783266076892"} 
[2026-07-05 17:41:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783266091325","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"30.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-05T14:09:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 17:41:30] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-05 17:41:30] production.INFO: Old stock: 30.00  
[2026-07-05 17:41:30] production.INFO: Quantity deducted: 2  
[2026-07-05 17:41:30] production.INFO: New stock: 28  
[2026-07-05 17:41:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783266091325"} 
[2026-07-05 17:54:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783266880922","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"92.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T13:48:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 17:54:41] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 17:54:41] production.INFO: Old stock: 92.00  
[2026-07-05 17:54:41] production.INFO: Quantity deducted: 1  
[2026-07-05 17:54:41] production.INFO: New stock: 91  
[2026-07-05 17:54:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783266880922"} 
[2026-07-05 18:16:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783268188254","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"91.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T15:54:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 18:16:29] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 18:16:29] production.INFO: Old stock: 91.00  
[2026-07-05 18:16:29] production.INFO: Quantity deducted: 1  
[2026-07-05 18:16:29] production.INFO: New stock: 90  
[2026-07-05 18:16:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783268188254"} 
[2026-07-05 18:22:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783268545860","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"23.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-04T08:21:45.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"16.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-07-04T14:26:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 18:22:26] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-05 18:22:26] production.INFO: Old stock: 23.00  
[2026-07-05 18:22:26] production.INFO: Quantity deducted: 1  
[2026-07-05 18:22:26] production.INFO: New stock: 22  
[2026-07-05 18:22:26] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-05 18:22:26] production.INFO: Old stock: 16.00  
[2026-07-05 18:22:26] production.INFO: Quantity deducted: 1  
[2026-07-05 18:22:26] production.INFO: New stock: 15  
[2026-07-05 18:22:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783268545860"} 
[2026-07-05 18:25:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783268722091","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"90.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T16:16:29.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 18:25:22] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 18:25:22] production.INFO: Old stock: 90.00  
[2026-07-05 18:25:22] production.INFO: Quantity deducted: 1  
[2026-07-05 18:25:22] production.INFO: New stock: 89  
[2026-07-05 18:25:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783268722091"} 
[2026-07-05 18:45:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783269925215","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"89.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T16:25:22.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 18:45:25] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 18:45:25] production.INFO: Old stock: 89.00  
[2026-07-05 18:45:25] production.INFO: Quantity deducted: 1  
[2026-07-05 18:45:25] production.INFO: New stock: 88  
[2026-07-05 18:45:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783269925215"} 
[2026-07-05 18:48:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783270093710","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"4.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T10:22:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 18:48:12] production.INFO: Stock deduction for product: HIV Test kit  
[2026-07-05 18:48:12] production.INFO: Old stock: 4.00  
[2026-07-05 18:48:12] production.INFO: Quantity deducted: 1  
[2026-07-05 18:48:12] production.INFO: New stock: 3  
[2026-07-05 18:48:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783270093710"} 
[2026-07-05 18:58:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783270703420","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"2.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-03T10:06:30.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 18:58:23] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-05 18:58:23] production.INFO: Old stock: 2.00  
[2026-07-05 18:58:23] production.INFO: Quantity deducted: 1  
[2026-07-05 18:58:23] production.INFO: New stock: 1  
[2026-07-05 18:58:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783270703420"} 
[2026-07-05 19:00:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783270840675","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"104.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T15:41:16.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 19:00:41] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-05 19:00:41] production.INFO: Old stock: 104.00  
[2026-07-05 19:00:41] production.INFO: Quantity deducted: 1  
[2026-07-05 19:00:41] production.INFO: New stock: 103  
[2026-07-05 19:00:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783270840675"} 
[2026-07-05 19:00:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783270842083","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"104.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T15:41:16.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 19:00:41] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-05 19:00:41] production.INFO: Old stock: 103.00  
[2026-07-05 19:00:41] production.INFO: Quantity deducted: 1  
[2026-07-05 19:00:41] production.INFO: New stock: 102  
[2026-07-05 19:00:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783270842083"} 
[2026-07-05 19:04:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783271044186","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"15.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T09:25:03.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 19:04:03] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-05 19:04:03] production.INFO: Old stock: 15.00  
[2026-07-05 19:04:03] production.INFO: Quantity deducted: 1  
[2026-07-05 19:04:03] production.INFO: New stock: 14  
[2026-07-05 19:04:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783271044186"} 
[2026-07-05 19:44:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783273458873","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":489,"product_id":489,"name":"KOFLYN (Raspberry), 100ml","sku":"3126","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":489,"name":"KOFLYN (Raspberry), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"17","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"12.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3126","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-11T06:30:00.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":934,"product_id":934,"name":"Cetrizine Syrup (Oncet)","sku":"PRD-00934","price":"5000.00","selling_price":"5000.00","purchase_price":"2350.00","quantity":1,"subtotal":5000,"product":{"id":934,"name":"Cetrizine Syrup (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","last_purchase_price":"2350.00","selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00934","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:01:39.000000Z","updated_at":"2026-07-05T14:09:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 19:44:18] production.INFO: Stock deduction for product: KOFLYN (Raspberry), 100ml  
[2026-07-05 19:44:18] production.INFO: Old stock: 12.00  
[2026-07-05 19:44:18] production.INFO: Quantity deducted: 1  
[2026-07-05 19:44:18] production.INFO: New stock: 11  
[2026-07-05 19:44:18] production.INFO: Stock deduction for product: Cetrizine Syrup (Oncet)  
[2026-07-05 19:44:18] production.INFO: Old stock: 4.00  
[2026-07-05 19:44:18] production.INFO: Quantity deducted: 1  
[2026-07-05 19:44:18] production.INFO: New stock: 3  
[2026-07-05 19:44:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783273458873"} 
[2026-07-05 19:44:19] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783273460145","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":489,"product_id":489,"name":"KOFLYN (Raspberry), 100ml","sku":"3126","price":"12000.00","selling_price":"12000.00","purchase_price":"6000.00","quantity":1,"subtotal":12000,"product":{"id":489,"name":"KOFLYN (Raspberry), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"17","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"12.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3126","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-11T06:30:00.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":934,"product_id":934,"name":"Cetrizine Syrup (Oncet)","sku":"PRD-00934","price":"5000.00","selling_price":"5000.00","purchase_price":"2350.00","quantity":1,"subtotal":5000,"product":{"id":934,"name":"Cetrizine Syrup (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2350.00","last_purchase_price":"2350.00","selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00934","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:01:39.000000Z","updated_at":"2026-07-05T14:09:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 19:44:19] production.INFO: Stock deduction for product: KOFLYN (Raspberry), 100ml  
[2026-07-05 19:44:19] production.INFO: Old stock: 11.00  
[2026-07-05 19:44:19] production.INFO: Quantity deducted: 1  
[2026-07-05 19:44:19] production.INFO: New stock: 10  
[2026-07-05 19:44:19] production.INFO: Stock deduction for product: Cetrizine Syrup (Oncet)  
[2026-07-05 19:44:19] production.INFO: Old stock: 3.00  
[2026-07-05 19:44:19] production.INFO: Quantity deducted: 1  
[2026-07-05 19:44:19] production.INFO: New stock: 2  
[2026-07-05 19:44:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783273460145"} 
[2026-07-05 20:01:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783274469493","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"88.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T16:45:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-05 20:01:10] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 20:01:10] production.INFO: Old stock: 88.00  
[2026-07-05 20:01:10] production.INFO: Quantity deducted: 1  
[2026-07-05 20:01:10] production.INFO: New stock: 87  
[2026-07-05 20:01:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783274469493"} 
[2026-07-05 20:22:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783275754592","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"87.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T18:01:10.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 20:22:35] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-05 20:22:35] production.INFO: Old stock: 87.00  
[2026-07-05 20:22:35] production.INFO: Quantity deducted: 2  
[2026-07-05 20:22:35] production.INFO: New stock: 85  
[2026-07-05 20:22:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783275754592"} 
[2026-07-05 20:24:22] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783275862800","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":2,"subtotal":4000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-04T08:48:14.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"58.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-04T18:57:28.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 20:24:22] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-05 20:24:22] production.INFO: Old stock: 47.00  
[2026-07-05 20:24:22] production.INFO: Quantity deducted: 2  
[2026-07-05 20:24:22] production.INFO: New stock: 45  
[2026-07-05 20:24:22] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-05 20:24:22] production.INFO: Old stock: 58.00  
[2026-07-05 20:24:22] production.INFO: Quantity deducted: 1  
[2026-07-05 20:24:22] production.INFO: New stock: 57  
[2026-07-05 20:24:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783275862800"} 
[2026-07-05 20:29:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783276141679","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"163.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T07:33:29.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 20:29:02] production.INFO: Stock deduction for product: HEDAX  
[2026-07-05 20:29:02] production.INFO: Old stock: 163.00  
[2026-07-05 20:29:02] production.INFO: Quantity deducted: 1  
[2026-07-05 20:29:02] production.INFO: New stock: 162  
[2026-07-05 20:29:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783276141679"} 
[2026-07-05 20:31:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783276288286","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"260.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T12:31:39.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"265.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T09:26:05.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-05 20:31:28] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-05 20:31:28] production.INFO: Old stock: 260.00  
[2026-07-05 20:31:28] production.INFO: Quantity deducted: 6  
[2026-07-05 20:31:28] production.INFO: New stock: 254  
[2026-07-05 20:31:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-05 20:31:28] production.INFO: Old stock: 265.00  
[2026-07-05 20:31:28] production.INFO: Quantity deducted: 1  
[2026-07-05 20:31:28] production.INFO: New stock: 264  
[2026-07-05 20:31:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783276288286"} 
[2026-07-06 08:55:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783320931522","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Ashwaganda","sku":"1259","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":82,"name":"Ashwaganda","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"15.00","stock":"20.00","product_type":"Single","tax":null,"sku":"1259","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-23","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-04T09:51:31.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":885,"product_id":885,"name":"Triphen 4 flu","sku":"PRD-00885","price":"22000.00","selling_price":"22000.00","purchase_price":"11000.00","quantity":1,"subtotal":22000,"product":{"id":885,"name":"Triphen 4 flu","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"11000.00","last_purchase_price":"11000.00","selling_price":"22000.00","current_stock":"3.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00885","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-17","last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:35:55.000000Z","updated_at":"2026-06-20T10:18:46.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-06 08:55:34] production.INFO: Stock deduction for product: Ashwaganda  
[2026-07-06 08:55:34] production.INFO: Old stock: 15.00  
[2026-07-06 08:55:34] production.INFO: Quantity deducted: 1  
[2026-07-06 08:55:34] production.INFO: New stock: 14  
[2026-07-06 08:55:34] production.INFO: Stock deduction for product: Triphen 4 flu  
[2026-07-06 08:55:34] production.INFO: Old stock: 3.00  
[2026-07-06 08:55:34] production.INFO: Quantity deducted: 1  
[2026-07-06 08:55:34] production.INFO: New stock: 2  
[2026-07-06 08:55:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783320931522"} 
[2026-07-06 09:07:44] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783321664088","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"100.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-05T09:25:03.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"33.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-06-16T13:47:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 09:07:44] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-06 09:07:44] production.INFO: Old stock: 100.00  
[2026-07-06 09:07:44] production.INFO: Quantity deducted: 1  
[2026-07-06 09:07:44] production.INFO: New stock: 99  
[2026-07-06 09:07:44] production.INFO: Stock deduction for product: Active C  
[2026-07-06 09:07:44] production.INFO: Old stock: 33.00  
[2026-07-06 09:07:44] production.INFO: Quantity deducted: 1  
[2026-07-06 09:07:44] production.INFO: New stock: 32  
[2026-07-06 09:07:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783321664088"} 
[2026-07-06 09:46:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783323993762","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"85.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T18:22:35.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":4000},{"method":"airtel_money","amount":500}]}} 
[2026-07-06 09:54:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783324490064","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":4,"subtotal":2000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"180.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-03T18:11:31.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 09:54:49] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-06 09:54:49] production.INFO: Old stock: 180.00  
[2026-07-06 09:54:49] production.INFO: Quantity deducted: 4  
[2026-07-06 09:54:49] production.INFO: New stock: 176  
[2026-07-06 09:54:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783324490064"} 
[2026-07-06 11:17:25] production.INFO: Stock Adjustment - Initial State {"product_id":"48","previous_quantity":"1.00","previous_selling_price":"2500.00","validated_data":{"product_id":"48","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":null,"new_expiry_date":"2026-07-06"}} 
[2026-07-06 11:17:25] production.INFO: Stock Adjustment - After Quantity Save {"product_id":48,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-07-06 11:18:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783329486513","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":48,"product_id":48,"name":"ALCLOX-250 (Cloxacillin 250mg)","sku":"1116","price":"3000.00","selling_price":"3000.00","purchase_price":"1150.00","quantity":4,"subtotal":12000,"product":{"id":48,"name":"ALCLOX-250 (Cloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1150.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1116","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-06","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-06T09:17:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-06 11:18:04] production.INFO: Stock deduction for product: ALCLOX-250 (Cloxacillin 250mg)  
[2026-07-06 11:18:04] production.INFO: Old stock: 11.00  
[2026-07-06 11:18:04] production.INFO: Quantity deducted: 4  
[2026-07-06 11:18:04] production.INFO: New stock: 7  
[2026-07-06 11:18:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783329486513"} 
[2026-07-06 11:52:42] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783331564856","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"8000.00","selling_price":"8000.00","purchase_price":"5000.00","quantity":1,"subtotal":8000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"13.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-25T06:38:43.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5500.00","selling_price":"5500.00","purchase_price":"2700.00","quantity":1,"subtotal":5500,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"6.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T13:36:25.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-06 11:52:42] production.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-07-06 11:52:42] production.INFO: Old stock: 13.00  
[2026-07-06 11:52:42] production.INFO: Quantity deducted: 1  
[2026-07-06 11:52:42] production.INFO: New stock: 12  
[2026-07-06 11:52:42] production.INFO: Stock deduction for product: PregStream  
[2026-07-06 11:52:42] production.INFO: Old stock: 6.00  
[2026-07-06 11:52:42] production.INFO: Quantity deducted: 1  
[2026-07-06 11:52:42] production.INFO: New stock: 5  
[2026-07-06 11:52:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783331564856"} 
[2026-07-06 11:52:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783331578463","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":543,"product_id":543,"name":"Maternity pads","sku":"3180","price":"14000.00","selling_price":"14000.00","purchase_price":"7000.00","quantity":1,"subtotal":14000,"product":{"id":543,"name":"Maternity pads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"7000.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3180","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-16T05:14:52.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 11:52:56] production.INFO: Stock deduction for product: Maternity pads  
[2026-07-06 11:52:56] production.INFO: Old stock: 3.00  
[2026-07-06 11:52:56] production.INFO: Quantity deducted: 1  
[2026-07-06 11:52:56] production.INFO: New stock: 2  
[2026-07-06 11:52:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783331578463"} 
[2026-07-06 11:53:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783331600448","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"21.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T11:33:45.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 11:53:18] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-06 11:53:18] production.INFO: Old stock: 21.00  
[2026-07-06 11:53:18] production.INFO: Quantity deducted: 1  
[2026-07-06 11:53:18] production.INFO: New stock: 20  
[2026-07-06 11:53:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783331600448"} 
[2026-07-06 11:58:08] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783331889671","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":2,"subtotal":1000,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"38.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-05T09:25:03.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":2,"subtotal":1600,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"100.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T09:25:03.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 11:58:08] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-07-06 11:58:08] production.INFO: Old stock: 38.00  
[2026-07-06 11:58:08] production.INFO: Quantity deducted: 2  
[2026-07-06 11:58:08] production.INFO: New stock: 36  
[2026-07-06 11:58:08] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-06 11:58:08] production.INFO: Old stock: 100.00  
[2026-07-06 11:58:08] production.INFO: Quantity deducted: 2  
[2026-07-06 11:58:08] production.INFO: New stock: 98  
[2026-07-06 11:58:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783331889671"} 
[2026-07-06 12:08:37] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783332519788","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-02T17:12:47.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"264.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T18:31:28.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"254.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T18:31:28.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 12:08:37] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-06 12:08:37] production.INFO: Old stock: 6.00  
[2026-07-06 12:08:37] production.INFO: Quantity deducted: 1  
[2026-07-06 12:08:37] production.INFO: New stock: 5  
[2026-07-06 12:08:37] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-06 12:08:37] production.INFO: Old stock: 264.00  
[2026-07-06 12:08:37] production.INFO: Quantity deducted: 1  
[2026-07-06 12:08:37] production.INFO: New stock: 263  
[2026-07-06 12:08:37] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-06 12:08:37] production.INFO: Old stock: 254.00  
[2026-07-06 12:08:37] production.INFO: Quantity deducted: 1  
[2026-07-06 12:08:37] production.INFO: New stock: 253  
[2026-07-06 12:08:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783332519788"} 
[2026-07-06 13:16:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783336579918","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":554,"product_id":554,"name":"METHYLATED SPIRIT 100ml","sku":"3191","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":554,"name":"METHYLATED SPIRIT 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3191","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-08T09:19:45.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":2,"subtotal":1600,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"98.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T09:58:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 13:16:18] production.INFO: Stock deduction for product: METHYLATED SPIRIT 100ml  
[2026-07-06 13:16:18] production.INFO: Old stock: 14.00  
[2026-07-06 13:16:18] production.INFO: Quantity deducted: 1  
[2026-07-06 13:16:18] production.INFO: New stock: 13  
[2026-07-06 13:16:18] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-06 13:16:18] production.INFO: Old stock: 98.00  
[2026-07-06 13:16:18] production.INFO: Quantity deducted: 2  
[2026-07-06 13:16:18] production.INFO: New stock: 96  
[2026-07-06 13:16:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783336579918"} 
[2026-07-06 13:26:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783337206611","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"176.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T07:58:29.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 13:26:44] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-06 13:26:44] production.INFO: Old stock: 176.00  
[2026-07-06 13:26:44] production.INFO: Quantity deducted: 2  
[2026-07-06 13:26:44] production.INFO: New stock: 174  
[2026-07-06 13:26:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783337206611"} 
[2026-07-06 14:47:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783342051790","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"84.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T07:46:33.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-06 14:47:30] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-06 14:47:30] production.INFO: Old stock: 84.00  
[2026-07-06 14:47:30] production.INFO: Quantity deducted: 1  
[2026-07-06 14:47:30] production.INFO: New stock: 83  
[2026-07-06 14:47:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783342051790"} 
[2026-07-06 15:07:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783343278354","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"20.00","stock":"41.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T09:53:18.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 15:07:56] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-06 15:07:56] production.INFO: Old stock: 20.00  
[2026-07-06 15:07:56] production.INFO: Quantity deducted: 1  
[2026-07-06 15:07:56] production.INFO: New stock: 19  
[2026-07-06 15:07:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783343278354"} 
[2026-07-06 15:28:07] production.INFO: Stock Adjustment - Initial State {"product_id":"973","previous_quantity":"6.00","previous_selling_price":"9500.00","validated_data":{"product_id":"973","adjustment_type":"add","quantity":"14","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":null,"new_expiry_date":"2026-07-06"}} 
[2026-07-06 15:28:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":973,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-06 15:33:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783344796563","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":703,"product_id":703,"name":"Stalcal Tab( Calcium)","sku":"3340","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":1,"subtotal":3000,"product":{"id":703,"name":"Stalcal Tab( Calcium)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"29.00","stock":"30.00","product_type":"Single","tax":null,"sku":"3340","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T12:22:06.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-06 15:33:14] production.INFO: Stock deduction for product: Stalcal Tab( Calcium)  
[2026-07-06 15:33:14] production.INFO: Old stock: 29.00  
[2026-07-06 15:33:14] production.INFO: Quantity deducted: 1  
[2026-07-06 15:33:14] production.INFO: New stock: 28  
[2026-07-06 15:33:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783344796563"} 
[2026-07-06 15:35:43] production.INFO: Product Store - Request Data {"all_data":{"_token":"sr26JBwxhCnHrBivYoYmBa9vdiWfEBrwZh8Rc8dO","name":"Vitomin (Multimineral Softgel Capsules)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"4750.00","selling_price":"9500.00","description":null,"purchase_quantity":"3.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-06 15:35:43] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Vitomin (Multimineral Softgel Capsules)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4750.00","selling_price":"9500.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-06 15:35:43] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Vitomin (Multimineral Softgel Capsules)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4750.00","selling_price":"9500.00","sku":"PRD-00988","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"3.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"3.00","last_purchase_price":"4750.00","last_purchase_date":"2026-07-06 15:35:43"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-06 15:35:43] production.INFO: Product Store - Product Created {"product_id":988,"product_name":"Vitomin (Multimineral Softgel Capsules)","product_sku":"PRD-00988"} 
[2026-07-06 15:38:38] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783345119354","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"83.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T12:47:30.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"158.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T15:10:25.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 15:38:38] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-06 15:38:38] production.INFO: Old stock: 83.00  
[2026-07-06 15:38:38] production.INFO: Quantity deducted: 1  
[2026-07-06 15:38:38] production.INFO: New stock: 82  
[2026-07-06 15:38:38] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-06 15:38:38] production.INFO: Old stock: 158.00  
[2026-07-06 15:38:38] production.INFO: Quantity deducted: 1  
[2026-07-06 15:38:38] production.INFO: New stock: 157  
[2026-07-06 15:38:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783345119354"} 
[2026-07-06 15:53:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783345999897","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"81.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-05T07:51:47.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 15:53:21] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-06 15:53:21] production.INFO: Old stock: 81.00  
[2026-07-06 15:53:21] production.INFO: Quantity deducted: 1  
[2026-07-06 15:53:21] production.INFO: New stock: 80  
[2026-07-06 15:53:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783345999897"} 
[2026-07-06 16:04:10] production.INFO: Stock Adjustment - Initial State {"product_id":"137","previous_quantity":"0.00","previous_selling_price":"700.00","validated_data":{"product_id":"137","adjustment_type":"add","quantity":"14","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-06"}} 
[2026-07-06 16:04:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":137,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-07-06 16:38:08] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1783348687391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":1,"subtotal":2000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"22.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-26T15:17:48.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":1,"subtotal":800,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"30.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-25T16:28:41.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"22.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T13:55:11.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"30.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T13:18:34.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"7.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T15:54:25.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 16:38:08] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-07-06 16:38:08] production.INFO: Old stock: 22.00  
[2026-07-06 16:38:08] production.INFO: Quantity deducted: 1  
[2026-07-06 16:38:08] production.INFO: New stock: 21  
[2026-07-06 16:38:08] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-07-06 16:38:08] production.INFO: Old stock: 30.00  
[2026-07-06 16:38:08] production.INFO: Quantity deducted: 1  
[2026-07-06 16:38:08] production.INFO: New stock: 29  
[2026-07-06 16:38:08] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-06 16:38:08] production.INFO: Old stock: 22.00  
[2026-07-06 16:38:08] production.INFO: Quantity deducted: 1  
[2026-07-06 16:38:08] production.INFO: New stock: 21  
[2026-07-06 16:38:08] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-07-06 16:38:08] production.INFO: Old stock: 30.00  
[2026-07-06 16:38:08] production.INFO: Quantity deducted: 1  
[2026-07-06 16:38:08] production.INFO: New stock: 29  
[2026-07-06 16:38:08] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-07-06 16:38:08] production.INFO: Old stock: 7.00  
[2026-07-06 16:38:08] production.INFO: Quantity deducted: 1  
[2026-07-06 16:38:08] production.INFO: New stock: 6  
[2026-07-06 16:38:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783348687391"} 
[2026-07-06 17:06:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783350415879","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-30T15:43:14.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 17:06:57] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-06 17:06:57] production.INFO: Old stock: 19.00  
[2026-07-06 17:06:57] production.INFO: Quantity deducted: 1  
[2026-07-06 17:06:57] production.INFO: New stock: 18  
[2026-07-06 17:06:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783350415879"} 
[2026-07-06 17:23:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783351395084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"53.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T16:57:51.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 17:23:16] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-06 17:23:16] production.INFO: Old stock: 53.00  
[2026-07-06 17:23:16] production.INFO: Quantity deducted: 1  
[2026-07-06 17:23:16] production.INFO: New stock: 52  
[2026-07-06 17:23:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783351395084"} 
[2026-07-06 17:31:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783351887129","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":142,"product_id":142,"name":"BROXOL-D SYRUP, 100ml","sku":"0711","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":142,"name":"BROXOL-D SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"3250.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"7.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0711","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-25T15:42:28.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 17:31:29] production.INFO: Stock deduction for product: BROXOL-D SYRUP, 100ml  
[2026-07-06 17:31:29] production.INFO: Old stock: 7.00  
[2026-07-06 17:31:29] production.INFO: Quantity deducted: 1  
[2026-07-06 17:31:29] production.INFO: New stock: 6  
[2026-07-06 17:31:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783351887129"} 
[2026-07-06 18:15:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783354523934","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"14.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T17:04:03.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"22.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-05T16:22:26.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 18:15:25] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-06 18:15:25] production.INFO: Old stock: 14.00  
[2026-07-06 18:15:25] production.INFO: Quantity deducted: 1  
[2026-07-06 18:15:25] production.INFO: New stock: 13  
[2026-07-06 18:15:25] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-06 18:15:25] production.INFO: Old stock: 22.00  
[2026-07-06 18:15:25] production.INFO: Quantity deducted: 1  
[2026-07-06 18:15:25] production.INFO: New stock: 21  
[2026-07-06 18:15:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783354523934"} 
[2026-07-06 19:16:40] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783358200087","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":1,"subtotal":1500,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"76.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-24T10:17:52.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-05T18:24:22.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 19:16:40] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-07-06 19:16:40] production.INFO: Old stock: 76.00  
[2026-07-06 19:16:40] production.INFO: Quantity deducted: 1  
[2026-07-06 19:16:40] production.INFO: New stock: 75  
[2026-07-06 19:16:40] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-06 19:16:40] production.INFO: Old stock: 45.00  
[2026-07-06 19:16:40] production.INFO: Quantity deducted: 1  
[2026-07-06 19:16:40] production.INFO: New stock: 44  
[2026-07-06 19:16:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783358200087"} 
[2026-07-06 19:30:47] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783359046819","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-06-29T14:55:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"13.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-06T16:15:25.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"21.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T16:15:25.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 19:30:47] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-07-06 19:30:47] production.INFO: Old stock: 5.00  
[2026-07-06 19:30:47] production.INFO: Quantity deducted: 1  
[2026-07-06 19:30:47] production.INFO: New stock: 4  
[2026-07-06 19:30:47] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-06 19:30:47] production.INFO: Old stock: 13.00  
[2026-07-06 19:30:47] production.INFO: Quantity deducted: 1  
[2026-07-06 19:30:47] production.INFO: New stock: 12  
[2026-07-06 19:30:47] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-06 19:30:47] production.INFO: Old stock: 21.00  
[2026-07-06 19:30:47] production.INFO: Quantity deducted: 1  
[2026-07-06 19:30:47] production.INFO: New stock: 20  
[2026-07-06 19:30:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783359046819"} 
[2026-07-06 19:31:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783359087403","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"263.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 19:31:27] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-06 19:31:27] production.INFO: Old stock: 263.00  
[2026-07-06 19:31:27] production.INFO: Quantity deducted: 5  
[2026-07-06 19:31:27] production.INFO: New stock: 258  
[2026-07-06 19:31:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783359087403"} 
[2026-07-06 19:49:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783360187598","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"32.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T17:17:23.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"21.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-06T14:38:08.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-06 19:49:49] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-06 19:49:49] production.INFO: Old stock: 32.00  
[2026-07-06 19:49:49] production.INFO: Quantity deducted: 1  
[2026-07-06 19:49:49] production.INFO: New stock: 31  
[2026-07-06 19:49:49] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-06 19:49:49] production.INFO: Old stock: 21.00  
[2026-07-06 19:49:49] production.INFO: Quantity deducted: 1  
[2026-07-06 19:49:49] production.INFO: New stock: 20  
[2026-07-06 19:49:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783360187598"} 
[2026-07-06 20:13:42] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783361622457","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":42,"product_id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","sku":"0690","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"1.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0690","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-25T18:21:23.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":808,"product_id":808,"name":"GAVISCON DOBLE ACTION SACHET","sku":"PRD-00808","price":"4500.00","selling_price":"4500.00","purchase_price":"2250.00","quantity":2,"subtotal":9000,"product":{"id":808,"name":"GAVISCON DOBLE ACTION SACHET","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2250.00","last_purchase_price":"2250.00","selling_price":"4500.00","current_stock":"15.00","stock":"26.00","product_type":"Single","tax":null,"sku":"PRD-00808","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":"2026-03-08","created_at":"2026-03-08T03:34:38.000000Z","updated_at":"2026-05-25T11:17:08.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-06 20:13:42] production.INFO: Stock deduction for product: AGYCIN (Azithromycin 40mg/ml Susp.), 15ml  
[2026-07-06 20:13:42] production.INFO: Old stock: 1.00  
[2026-07-06 20:13:42] production.INFO: Quantity deducted: 1  
[2026-07-06 20:13:42] production.INFO: New stock: 0  
[2026-07-06 20:13:42] production.INFO: Stock deduction for product: GAVISCON DOBLE ACTION SACHET  
[2026-07-06 20:13:42] production.INFO: Old stock: 15.00  
[2026-07-06 20:13:42] production.INFO: Quantity deducted: 2  
[2026-07-06 20:13:42] production.INFO: New stock: 13  
[2026-07-06 20:13:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783361622457"} 
[2026-07-06 20:13:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783361636472","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":430,"product_id":430,"name":"Grand pa","sku":"3067","price":"1000.00","selling_price":"1000.00","purchase_price":"526.00","quantity":1,"subtotal":1000,"product":{"id":430,"name":"Grand pa","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"526.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3067","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-30T15:24:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 20:13:56] production.INFO: Stock deduction for product: Grand pa  
[2026-07-06 20:13:56] production.INFO: Old stock: 1.00  
[2026-07-06 20:13:56] production.INFO: Quantity deducted: 1  
[2026-07-06 20:13:56] production.INFO: New stock: 0  
[2026-07-06 20:13:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783361636472"} 
[2026-07-06 20:44:45] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783363484937","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":71,"product_id":71,"name":"Antagit DS Gel 100ml","sku":"1184","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":71,"name":"Antagit DS Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"28.00","stock":"28.00","product_type":"Single","tax":null,"sku":"1184","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-02T21:13:33.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-07-06T17:30:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 20:44:45] production.INFO: Stock deduction for product: Antagit DS Gel 100ml  
[2026-07-06 20:44:45] production.INFO: Old stock: 28.00  
[2026-07-06 20:44:45] production.INFO: Quantity deducted: 1  
[2026-07-06 20:44:45] production.INFO: New stock: 27  
[2026-07-06 20:44:45] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-07-06 20:44:45] production.INFO: Old stock: 4.00  
[2026-07-06 20:44:45] production.INFO: Quantity deducted: 1  
[2026-07-06 20:44:45] production.INFO: New stock: 3  
[2026-07-06 20:44:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783363484937"} 
[2026-07-06 20:47:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783363654368","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11500.00","selling_price":"11500.00","purchase_price":"3500.00","quantity":1,"subtotal":11500,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T14:26:35.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-07-06T18:46:09.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 20:47:35] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-07-06 20:47:35] production.INFO: Old stock: 13.00  
[2026-07-06 20:47:35] production.INFO: Quantity deducted: 1  
[2026-07-06 20:47:35] production.INFO: New stock: 12  
[2026-07-06 20:47:35] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-07-06 20:47:35] production.INFO: Old stock: 4.00  
[2026-07-06 20:47:35] production.INFO: Quantity deducted: 1  
[2026-07-06 20:47:35] production.INFO: New stock: 3  
[2026-07-06 20:47:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783363654368"} 
[2026-07-06 20:52:09] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783363929079","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":656,"product_id":656,"name":"PROMETHAZINE 25MG TABLETS","sku":"3293","price":"1500.00","selling_price":"1500.00","purchase_price":"239.00","quantity":1,"subtotal":1500,"product":{"id":656,"name":"PROMETHAZINE 25MG TABLETS","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"239.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3293","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-02T05:52:33.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"20.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T17:30:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 20:52:09] production.INFO: Stock deduction for product: PROMETHAZINE 25MG TABLETS  
[2026-07-06 20:52:09] production.INFO: Old stock: 4.00  
[2026-07-06 20:52:09] production.INFO: Quantity deducted: 1  
[2026-07-06 20:52:09] production.INFO: New stock: 3  
[2026-07-06 20:52:09] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-06 20:52:09] production.INFO: Old stock: 20.00  
[2026-07-06 20:52:09] production.INFO: Quantity deducted: 1  
[2026-07-06 20:52:09] production.INFO: New stock: 19  
[2026-07-06 20:52:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783363929079"} 
[2026-07-06 21:10:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783365023971","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":616,"product_id":616,"name":"ORS (CORS)","sku":"3253","price":"1000.00","selling_price":"1000.00","purchase_price":"3890.00","quantity":4,"subtotal":4000,"product":{"id":616,"name":"ORS (CORS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"3890.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"10.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3253","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-04T10:08:59.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":147,"product_id":147,"name":"Cafemol Peads","sku":"1179","price":"300.00","selling_price":"300.00","purchase_price":"79.00","quantity":2,"subtotal":600,"product":{"id":147,"name":"Cafemol Peads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"79.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"40.00","stock":"79.00","product_type":"Single","tax":null,"sku":"1179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-04T13:25:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-06 21:10:26] production.INFO: Stock deduction for product: ORS (CORS)  
[2026-07-06 21:10:26] production.INFO: Old stock: 10.00  
[2026-07-06 21:10:26] production.INFO: Quantity deducted: 4  
[2026-07-06 21:10:26] production.INFO: New stock: 6  
[2026-07-06 21:10:26] production.INFO: Stock deduction for product: Cafemol Peads  
[2026-07-06 21:10:26] production.INFO: Old stock: 40.00  
[2026-07-06 21:10:26] production.INFO: Quantity deducted: 2  
[2026-07-06 21:10:26] production.INFO: New stock: 38  
[2026-07-06 21:10:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783365023971"} 
[2026-07-07 07:49:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783403352563","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"19.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T14:07:45.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-07 07:49:12] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-07 07:49:12] production.INFO: Old stock: 19.00  
[2026-07-07 07:49:12] production.INFO: Quantity deducted: 1  
[2026-07-07 07:49:12] production.INFO: New stock: 18  
[2026-07-07 07:49:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783403352563"} 
[2026-07-07 08:13:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783404782662","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"4.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T09:58:34.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 08:13:03] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-07-07 08:13:03] production.INFO: Old stock: 4.00  
[2026-07-07 08:13:03] production.INFO: Quantity deducted: 1  
[2026-07-07 08:13:03] production.INFO: New stock: 3  
[2026-07-07 08:13:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783404782662"} 
[2026-07-07 08:25:09] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783405508963","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"12.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-05T14:09:41.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-07-04T06:53:11.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 08:25:09] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-07-07 08:25:09] production.INFO: Old stock: 12.00  
[2026-07-07 08:25:09] production.INFO: Quantity deducted: 1  
[2026-07-07 08:25:09] production.INFO: New stock: 11  
[2026-07-07 08:25:09] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-07-07 08:25:09] production.INFO: Old stock: 3.00  
[2026-07-07 08:25:09] production.INFO: Quantity deducted: 1  
[2026-07-07 08:25:09] production.INFO: New stock: 2  
[2026-07-07 08:25:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783405508963"} 
[2026-07-07 08:28:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783405703210","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"89.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T09:29:05.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 08:28:22] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-07 08:28:22] production.INFO: Old stock: 89.00  
[2026-07-07 08:28:22] production.INFO: Quantity deducted: 1  
[2026-07-07 08:28:22] production.INFO: New stock: 88  
[2026-07-07 08:28:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783405703210"} 
[2026-07-07 08:52:00] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783407118973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":1,"subtotal":1000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T13:20:20.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"29.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-06T14:38:08.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 08:52:00] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-07-07 08:52:00] production.INFO: Old stock: 17.00  
[2026-07-07 08:52:00] production.INFO: Quantity deducted: 1  
[2026-07-07 08:52:00] production.INFO: New stock: 16  
[2026-07-07 08:52:00] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-07-07 08:52:00] production.INFO: Old stock: 29.00  
[2026-07-07 08:52:00] production.INFO: Quantity deducted: 1  
[2026-07-07 08:52:00] production.INFO: New stock: 28  
[2026-07-07 08:52:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783407118973"} 
[2026-07-07 09:17:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783408622672","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"20.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-06T17:49:49.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":4,"subtotal":4000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"165.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T10:50:59.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 09:17:03] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-07 09:17:03] production.INFO: Old stock: 20.00  
[2026-07-07 09:17:03] production.INFO: Quantity deducted: 1  
[2026-07-07 09:17:03] production.INFO: New stock: 19  
[2026-07-07 09:17:03] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-07 09:17:03] production.INFO: Old stock: 165.00  
[2026-07-07 09:17:03] production.INFO: Quantity deducted: 4  
[2026-07-07 09:17:03] production.INFO: New stock: 161  
[2026-07-07 09:17:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783408622672"} 
[2026-07-07 09:37:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783409830579","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"82.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T13:38:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 09:37:11] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-07 09:37:11] production.INFO: Old stock: 82.00  
[2026-07-07 09:37:11] production.INFO: Quantity deducted: 1  
[2026-07-07 09:37:11] production.INFO: New stock: 81  
[2026-07-07 09:37:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783409830579"} 
[2026-07-07 09:49:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783410556952","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":847,"product_id":847,"name":"Caster oil 50 ml","sku":"PRD-00847","price":"10000.00","selling_price":"10000.00","purchase_price":"4000.00","quantity":1,"subtotal":10000,"product":{"id":847,"name":"Caster oil 50 ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"76","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"10000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00847","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:31:47.000000Z","updated_at":"2026-05-14T11:52:16.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 09:49:16] production.INFO: Stock deduction for product: Caster oil 50 ml  
[2026-07-07 09:49:16] production.INFO: Old stock: 8.00  
[2026-07-07 09:49:16] production.INFO: Quantity deducted: 1  
[2026-07-07 09:49:16] production.INFO: New stock: 7  
[2026-07-07 09:49:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783410556952"} 
[2026-07-07 10:13:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783412010060","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":5,"subtotal":5000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"31.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-06T17:49:49.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 10:13:29] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-07 10:13:29] production.INFO: Old stock: 31.00  
[2026-07-07 10:13:29] production.INFO: Quantity deducted: 5  
[2026-07-07 10:13:29] production.INFO: New stock: 26  
[2026-07-07 10:13:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783412010060"} 
[2026-07-07 10:19:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783412385346","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"28.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-05T15:41:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 10:19:46] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-07 10:19:46] production.INFO: Old stock: 28.00  
[2026-07-07 10:19:46] production.INFO: Quantity deducted: 1  
[2026-07-07 10:19:46] production.INFO: New stock: 27  
[2026-07-07 10:19:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783412385346"} 
[2026-07-07 10:24:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783412656121","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T18:52:09.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":2,"subtotal":2000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"98.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T16:57:51.000000Z","brand":null,"category":null}},{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"26.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T08:13:29.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 10:24:15] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-07 10:24:15] production.INFO: Old stock: 19.00  
[2026-07-07 10:24:15] production.INFO: Quantity deducted: 1  
[2026-07-07 10:24:15] production.INFO: New stock: 18  
[2026-07-07 10:24:15] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-07 10:24:15] production.INFO: Old stock: 98.00  
[2026-07-07 10:24:15] production.INFO: Quantity deducted: 2  
[2026-07-07 10:24:15] production.INFO: New stock: 96  
[2026-07-07 10:24:15] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-07 10:24:15] production.INFO: Old stock: 26.00  
[2026-07-07 10:24:15] production.INFO: Quantity deducted: 1  
[2026-07-07 10:24:15] production.INFO: New stock: 25  
[2026-07-07 10:24:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783412656121"} 
[2026-07-07 10:25:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783412730896","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":1,"subtotal":1500,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"75.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-06T17:16:40.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"44.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-06T17:16:40.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 10:25:31] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-07-07 10:25:31] production.INFO: Old stock: 75.00  
[2026-07-07 10:25:31] production.INFO: Quantity deducted: 1  
[2026-07-07 10:25:31] production.INFO: New stock: 74  
[2026-07-07 10:25:31] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-07 10:25:31] production.INFO: Old stock: 44.00  
[2026-07-07 10:25:31] production.INFO: Quantity deducted: 1  
[2026-07-07 10:25:31] production.INFO: New stock: 43  
[2026-07-07 10:25:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783412730896"} 
[2026-07-07 10:54:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783414466443","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":162,"product_id":162,"name":"CEFIXIME TABLETS 400MG(CACHMAX)","sku":"0724","price":"20000.00","selling_price":"20000.00","purchase_price":"10800.00","quantity":1,"subtotal":20000,"product":{"id":162,"name":"CEFIXIME TABLETS 400MG(CACHMAX)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"10800.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"5.00","stock":"6.00","product_type":"Single","tax":null,"sku":"0724","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-21T11:05:07.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 10:54:27] production.INFO: Stock deduction for product: CEFIXIME TABLETS 400MG(CACHMAX)  
[2026-07-07 10:54:27] production.INFO: Old stock: 5.00  
[2026-07-07 10:54:27] production.INFO: Quantity deducted: 1  
[2026-07-07 10:54:27] production.INFO: New stock: 4  
[2026-07-07 10:54:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783414466443"} 
[2026-07-07 11:12:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783415519695","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"27.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-07T08:19:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 11:12:00] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-07 11:12:00] production.INFO: Old stock: 27.00  
[2026-07-07 11:12:00] production.INFO: Quantity deducted: 1  
[2026-07-07 11:12:00] production.INFO: New stock: 26  
[2026-07-07 11:12:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783415519695"} 
[2026-07-07 11:33:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783416803474","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"25.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T08:24:15.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-07 11:33:23] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-07 11:33:23] production.INFO: Old stock: 25.00  
[2026-07-07 11:33:23] production.INFO: Quantity deducted: 1  
[2026-07-07 11:33:23] production.INFO: New stock: 24  
[2026-07-07 11:33:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783416803474"} 
[2026-07-07 11:50:47] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783417846814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"19.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T07:17:03.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"37.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T06:54:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 11:50:47] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-07 11:50:47] production.INFO: Old stock: 19.00  
[2026-07-07 11:50:47] production.INFO: Quantity deducted: 1  
[2026-07-07 11:50:47] production.INFO: New stock: 18  
[2026-07-07 11:50:47] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-07-07 11:50:47] production.INFO: Old stock: 37.00  
[2026-07-07 11:50:47] production.INFO: Quantity deducted: 1  
[2026-07-07 11:50:47] production.INFO: New stock: 36  
[2026-07-07 11:50:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783417846814"} 
[2026-07-07 12:20:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783419655320","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"99.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-06T07:07:44.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 12:20:56] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-07 12:20:56] production.INFO: Old stock: 99.00  
[2026-07-07 12:20:56] production.INFO: Quantity deducted: 1  
[2026-07-07 12:20:56] production.INFO: New stock: 98  
[2026-07-07 12:20:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783419655320"} 
[2026-07-07 13:07:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783422468398","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-22T13:25:06.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T15:57:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-07 13:07:52] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-07-07 13:07:52] production.INFO: Old stock: 6.00  
[2026-07-07 13:07:52] production.INFO: Quantity deducted: 1  
[2026-07-07 13:07:52] production.INFO: New stock: 5  
[2026-07-07 13:07:52] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-07 13:07:52] production.INFO: Old stock: 11.00  
[2026-07-07 13:07:52] production.INFO: Quantity deducted: 1  
[2026-07-07 13:07:52] production.INFO: New stock: 10  
[2026-07-07 13:07:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783422468398"} 
[2026-07-07 13:09:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783422569469","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"81.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T07:37:11.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-07 13:09:34] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-07 13:09:34] production.INFO: Old stock: 81.00  
[2026-07-07 13:09:34] production.INFO: Quantity deducted: 1  
[2026-07-07 13:09:34] production.INFO: New stock: 80  
[2026-07-07 13:09:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783422569469"} 
[2026-07-07 14:13:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783426435806","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":107,"product_id":107,"name":"Benylin Dry -100ml","sku":"1310","price":"30000.00","selling_price":"30000.00","purchase_price":"15500.00","quantity":1,"subtotal":30000,"product":{"id":107,"name":"Benylin Dry -100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"15500.00","last_purchase_price":null,"selling_price":"30000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-06T00:11:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 14:13:55] production.INFO: Stock deduction for product: Benylin Dry -100ml  
[2026-07-07 14:13:55] production.INFO: Old stock: 2.00  
[2026-07-07 14:13:55] production.INFO: Quantity deducted: 1  
[2026-07-07 14:13:55] production.INFO: New stock: 1  
[2026-07-07 14:13:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783426435806"} 
[2026-07-07 14:37:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783427861753","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"258.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T17:31:27.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 14:37:41] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-07 14:37:41] production.INFO: Old stock: 258.00  
[2026-07-07 14:37:41] production.INFO: Quantity deducted: 10  
[2026-07-07 14:37:41] production.INFO: New stock: 248  
[2026-07-07 14:37:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783427861753"} 
[2026-07-07 14:48:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783428532823","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"80.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T13:53:21.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-07 14:48:52] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-07 14:48:52] production.INFO: Old stock: 80.00  
[2026-07-07 14:48:52] production.INFO: Quantity deducted: 1  
[2026-07-07 14:48:52] production.INFO: New stock: 79  
[2026-07-07 14:48:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783428532823"} 
[2026-07-07 15:04:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783429480179","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"7.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-23T18:57:10.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-07 15:04:41] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-07-07 15:04:41] production.INFO: Old stock: 7.00  
[2026-07-07 15:04:41] production.INFO: Quantity deducted: 1  
[2026-07-07 15:04:41] production.INFO: New stock: 6  
[2026-07-07 15:04:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783429480179"} 
[2026-07-07 15:31:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783431107157","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"3.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T06:13:03.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 15:31:48] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-07-07 15:31:48] production.INFO: Old stock: 3.00  
[2026-07-07 15:31:48] production.INFO: Quantity deducted: 1  
[2026-07-07 15:31:48] production.INFO: New stock: 2  
[2026-07-07 15:31:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783431107157"} 
[2026-07-07 15:48:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783432133049","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"80.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T11:09:34.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-07 15:48:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-07 15:48:54] production.INFO: Old stock: 80.00  
[2026-07-07 15:48:54] production.INFO: Quantity deducted: 1  
[2026-07-07 15:48:54] production.INFO: New stock: 79  
[2026-07-07 15:48:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783432133049"} 
[2026-07-07 16:09:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783433389261","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-06T15:06:57.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 16:09:50] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-07 16:09:50] production.INFO: Old stock: 18.00  
[2026-07-07 16:09:50] production.INFO: Quantity deducted: 1  
[2026-07-07 16:09:50] production.INFO: New stock: 17  
[2026-07-07 16:09:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783433389261"} 
[2026-07-07 16:10:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783433437044","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":662,"product_id":662,"name":"QUADRAJEL, 15g","sku":"3299","price":"7000.00","selling_price":"7000.00","purchase_price":"2950.00","quantity":1,"subtotal":7000,"product":{"id":662,"name":"QUADRAJEL, 15g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"21.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3299","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-30T13:21:35.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":5000},{"method":"airtel_money","amount":2000}]}} 
[2026-07-07 16:12:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783433571596","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"110.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-04T17:48:11.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 16:12:52] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-07 16:12:52] production.INFO: Old stock: 110.00  
[2026-07-07 16:12:52] production.INFO: Quantity deducted: 1  
[2026-07-07 16:12:52] production.INFO: New stock: 109  
[2026-07-07 16:12:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783433571596"} 
[2026-07-07 16:29:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783434552834","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":721,"product_id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","sku":"3358","price":"2000.00","selling_price":"2000.00","purchase_price":"760.00","quantity":1,"subtotal":2000,"product":{"id":721,"name":"Tetracycline Eye Ointiment (WW-TEO)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3358","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T06:01:17.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"24.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T09:33:23.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":768,"product_id":768,"name":"XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP","sku":"3405","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":768,"name":"XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3405","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T20:28:11.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-07 16:29:12] production.INFO: Stock deduction for product: Tetracycline Eye Ointiment (WW-TEO)  
[2026-07-07 16:29:12] production.INFO: Old stock: 10.00  
[2026-07-07 16:29:12] production.INFO: Quantity deducted: 1  
[2026-07-07 16:29:12] production.INFO: New stock: 9  
[2026-07-07 16:29:12] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-07 16:29:12] production.INFO: Old stock: 24.00  
[2026-07-07 16:29:12] production.INFO: Quantity deducted: 1  
[2026-07-07 16:29:12] production.INFO: New stock: 23  
[2026-07-07 16:29:12] production.INFO: Stock deduction for product: XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP  
[2026-07-07 16:29:12] production.INFO: Old stock: 10.00  
[2026-07-07 16:29:12] production.INFO: Quantity deducted: 1  
[2026-07-07 16:29:12] production.INFO: New stock: 9  
[2026-07-07 16:29:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783434552834"} 
[2026-07-07 16:29:39] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783434579720","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"12.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-06T17:30:47.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"157.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T15:34:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 16:29:39] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-07 16:29:39] production.INFO: Old stock: 12.00  
[2026-07-07 16:29:39] production.INFO: Quantity deducted: 1  
[2026-07-07 16:29:39] production.INFO: New stock: 11  
[2026-07-07 16:29:39] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-07 16:29:39] production.INFO: Old stock: 157.00  
[2026-07-07 16:29:39] production.INFO: Quantity deducted: 5  
[2026-07-07 16:29:39] production.INFO: New stock: 152  
[2026-07-07 16:29:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783434579720"} 
[2026-07-07 16:45:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783435538205","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":32,"product_id":32,"name":"ACINET DRY SYRUP (Amoxicillin & Clavulanate Potassium)","sku":"0663","price":"11000.00","selling_price":"11000.00","purchase_price":"5800.00","quantity":1,"subtotal":11000,"product":{"id":32,"name":"ACINET DRY SYRUP (Amoxicillin & Clavulanate Potassium)","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"20","supplier_id":null,"purchase_price":"5800.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0663","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-03T16:14:00.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-07 16:45:39] production.INFO: Stock deduction for product: ACINET DRY SYRUP (Amoxicillin & Clavulanate Potassium)  
[2026-07-07 16:45:39] production.INFO: Old stock: 3.00  
[2026-07-07 16:45:39] production.INFO: Quantity deducted: 1  
[2026-07-07 16:45:39] production.INFO: New stock: 2  
[2026-07-07 16:45:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783435538205"} 
[2026-07-07 16:54:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783436084979","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-04T14:30:43.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 16:54:45] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-07-07 16:54:45] production.INFO: Old stock: 5.00  
[2026-07-07 16:54:45] production.INFO: Quantity deducted: 1  
[2026-07-07 16:54:45] production.INFO: New stock: 4  
[2026-07-07 16:54:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783436084979"} 
[2026-07-07 16:55:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783436146315","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"43.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-07T08:25:31.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 16:55:46] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-07 16:55:46] production.INFO: Old stock: 43.00  
[2026-07-07 16:55:46] production.INFO: Quantity deducted: 1  
[2026-07-07 16:55:46] production.INFO: New stock: 42  
[2026-07-07 16:55:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783436146315"} 
[2026-07-07 17:03:09] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783436589449","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"18.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T09:50:47.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"174.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T11:26:44.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 17:03:09] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-07 17:03:09] production.INFO: Old stock: 18.00  
[2026-07-07 17:03:09] production.INFO: Quantity deducted: 1  
[2026-07-07 17:03:09] production.INFO: New stock: 17  
[2026-07-07 17:03:09] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-07 17:03:09] production.INFO: Old stock: 174.00  
[2026-07-07 17:03:09] production.INFO: Quantity deducted: 2  
[2026-07-07 17:03:09] production.INFO: New stock: 172  
[2026-07-07 17:03:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783436589449"} 
[2026-07-07 17:49:51] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783439389258","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"6.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-07T13:04:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"18.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T08:24:15.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 17:49:52] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-07-07 17:49:52] production.INFO: Old stock: 6.00  
[2026-07-07 17:49:52] production.INFO: Quantity deducted: 1  
[2026-07-07 17:49:52] production.INFO: New stock: 5  
[2026-07-07 17:49:52] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-07 17:49:52] production.INFO: Old stock: 18.00  
[2026-07-07 17:49:52] production.INFO: Quantity deducted: 1  
[2026-07-07 17:49:52] production.INFO: New stock: 17  
[2026-07-07 17:49:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783439389258"} 
[2026-07-07 18:03:40] production.INFO: Stock Adjustment - Initial State {"product_id":"807","previous_quantity":"0.00","previous_selling_price":"3000.00","validated_data":{"product_id":"807","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-07"}} 
[2026-07-07 18:03:40] production.INFO: Stock Adjustment - After Quantity Save {"product_id":807,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-07-07 18:07:18] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783440436237","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"57.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T18:24:22.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"29.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-03T12:41:44.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:07:18] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-07 18:07:18] production.INFO: Old stock: 57.00  
[2026-07-07 18:07:18] production.INFO: Quantity deducted: 1  
[2026-07-07 18:07:18] production.INFO: New stock: 56  
[2026-07-07 18:07:18] production.INFO: Stock deduction for product: Iduplus  
[2026-07-07 18:07:18] production.INFO: Old stock: 29.00  
[2026-07-07 18:07:18] production.INFO: Quantity deducted: 1  
[2026-07-07 18:07:18] production.INFO: New stock: 28  
[2026-07-07 18:07:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783440436237"} 
[2026-07-07 18:08:28] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1783440506426","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-06T14:04:10.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"248.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-07T12:37:41.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"17.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T15:03:09.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"253.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"162.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T18:29:02.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:08:28] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-07-07 18:08:28] production.INFO: Old stock: 14.00  
[2026-07-07 18:08:28] production.INFO: Quantity deducted: 1  
[2026-07-07 18:08:28] production.INFO: New stock: 13  
[2026-07-07 18:08:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-07 18:08:28] production.INFO: Old stock: 248.00  
[2026-07-07 18:08:28] production.INFO: Quantity deducted: 1  
[2026-07-07 18:08:28] production.INFO: New stock: 247  
[2026-07-07 18:08:28] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-07 18:08:28] production.INFO: Old stock: 17.00  
[2026-07-07 18:08:28] production.INFO: Quantity deducted: 1  
[2026-07-07 18:08:28] production.INFO: New stock: 16  
[2026-07-07 18:08:28] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-07 18:08:28] production.INFO: Old stock: 253.00  
[2026-07-07 18:08:28] production.INFO: Quantity deducted: 1  
[2026-07-07 18:08:28] production.INFO: New stock: 252  
[2026-07-07 18:08:28] production.INFO: Stock deduction for product: HEDAX  
[2026-07-07 18:08:28] production.INFO: Old stock: 162.00  
[2026-07-07 18:08:28] production.INFO: Quantity deducted: 2  
[2026-07-07 18:08:28] production.INFO: New stock: 160  
[2026-07-07 18:08:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783440506426"} 
[2026-07-07 18:08:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783440530569","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"28.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-03T08:16:52.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":167,"product_id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","sku":"0729","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":167,"name":"CETERIZINE Tablets 10MG (RINACET)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"47.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0729","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-04","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-29T09:33:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:08:52] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-07 18:08:52] production.INFO: Old stock: 28.00  
[2026-07-07 18:08:52] production.INFO: Quantity deducted: 1  
[2026-07-07 18:08:52] production.INFO: New stock: 27  
[2026-07-07 18:08:52] production.INFO: Stock deduction for product: CETERIZINE Tablets 10MG (RINACET)  
[2026-07-07 18:08:52] production.INFO: Old stock: 47.00  
[2026-07-07 18:08:52] production.INFO: Quantity deducted: 1  
[2026-07-07 18:08:52] production.INFO: New stock: 46  
[2026-07-07 18:08:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783440530569"} 
[2026-07-07 18:09:38] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783440576096","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"79.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T13:48:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":99,"product_id":99,"name":"BECLOMIN CREAM, 15g","sku":"0695","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":99,"name":"BECLOMIN CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"21.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0695","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-04T10:12:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":100,"product_id":100,"name":"BECLOMIN CREAM, 30g","sku":"0696","price":"5500.00","selling_price":"5500.00","purchase_price":"2450.00","quantity":1,"subtotal":5500,"product":{"id":100,"name":"BECLOMIN CREAM, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0696","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-10T17:00:39.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:09:38] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-07 18:09:38] production.INFO: Old stock: 79.00  
[2026-07-07 18:09:38] production.INFO: Quantity deducted: 1  
[2026-07-07 18:09:38] production.INFO: New stock: 78  
[2026-07-07 18:09:38] production.INFO: Stock deduction for product: BECLOMIN CREAM, 15g  
[2026-07-07 18:09:38] production.INFO: Old stock: 21.00  
[2026-07-07 18:09:38] production.INFO: Quantity deducted: 1  
[2026-07-07 18:09:38] production.INFO: New stock: 20  
[2026-07-07 18:09:38] production.INFO: Stock deduction for product: BECLOMIN CREAM, 30g  
[2026-07-07 18:09:38] production.INFO: Old stock: 8.00  
[2026-07-07 18:09:38] production.INFO: Quantity deducted: 1  
[2026-07-07 18:09:38] production.INFO: New stock: 7  
[2026-07-07 18:09:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783440576096"} 
[2026-07-07 18:18:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783441098832","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":807,"product_id":807,"name":"Crepe Bandage 10cm","sku":"1174","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":2,"subtotal":6000,"product":{"id":807,"name":"Crepe Bandage 10cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1174","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-07","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-07T16:03:40.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:18:20] production.INFO: Stock deduction for product: Crepe Bandage 10cm  
[2026-07-07 18:18:20] production.INFO: Old stock: 12.00  
[2026-07-07 18:18:20] production.INFO: Quantity deducted: 2  
[2026-07-07 18:18:20] production.INFO: New stock: 10  
[2026-07-07 18:18:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783441098832"} 
[2026-07-07 18:18:42] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783441119945","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":632,"product_id":632,"name":"Phenobarbitone 30 mg","sku":"3269","price":"2500.00","selling_price":"2500.00","purchase_price":"1197.00","quantity":3,"subtotal":7500,"product":{"id":632,"name":"Phenobarbitone 30 mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"1197.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"41.00","stock":"49.00","product_type":"Single","tax":null,"sku":"3269","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T18:23:52.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"79.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T12:48:52.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:18:42] production.INFO: Stock deduction for product: Phenobarbitone 30 mg  
[2026-07-07 18:18:42] production.INFO: Old stock: 41.00  
[2026-07-07 18:18:42] production.INFO: Quantity deducted: 3  
[2026-07-07 18:18:42] production.INFO: New stock: 38  
[2026-07-07 18:18:42] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-07 18:18:42] production.INFO: Old stock: 79.00  
[2026-07-07 18:18:42] production.INFO: Quantity deducted: 1  
[2026-07-07 18:18:42] production.INFO: New stock: 78  
[2026-07-07 18:18:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783441119945"} 
[2026-07-07 18:32:55] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783441974641","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":736,"product_id":736,"name":"TRIPHEN WET (Syrup)","sku":"3373","price":"16000.00","selling_price":"16000.00","purchase_price":"8000.00","quantity":1,"subtotal":16000,"product":{"id":736,"name":"TRIPHEN WET (Syrup)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"3373","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-05-26T07:42:56.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":735,"product_id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","sku":"3372","price":"17000.00","selling_price":"17000.00","purchase_price":"8000.00","quantity":1,"subtotal":17000,"product":{"id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"6","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"17000.00","current_stock":"7.01","stock":"8.01","product_type":"Single","tax":null,"sku":"3372","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T17:57:14.000000Z","brand":{"id":6,"name":"100ML","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"66.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-03T08:33:19.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":30000},{"method":"cash","amount":4500}]}} 
[2026-07-07 18:36:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783442160120","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":230,"product_id":230,"name":"Dental Floss (zhuyusheng)","sku":"1255","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":230,"name":"Dental Floss (zhuyusheng)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"21.00","stock":"28.00","product_type":"Single","tax":null,"sku":"1255","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-19T11:16:20.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 18:36:02] production.INFO: Stock deduction for product: Dental Floss (zhuyusheng)  
[2026-07-07 18:36:02] production.INFO: Old stock: 21.00  
[2026-07-07 18:36:02] production.INFO: Quantity deducted: 1  
[2026-07-07 18:36:02] production.INFO: New stock: 20  
[2026-07-07 18:36:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783442160120"} 
[2026-07-07 19:52:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783446748438","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"98.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-07T10:20:56.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 19:52:30] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-07 19:52:30] production.INFO: Old stock: 98.00  
[2026-07-07 19:52:30] production.INFO: Quantity deducted: 1  
[2026-07-07 19:52:30] production.INFO: New stock: 97  
[2026-07-07 19:52:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783446748438"} 
[2026-07-07 20:50:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783450220064","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-07-06T18:47:35.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-07 20:50:20] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-07-07 20:50:20] production.INFO: Old stock: 3.00  
[2026-07-07 20:50:20] production.INFO: Quantity deducted: 1  
[2026-07-07 20:50:20] production.INFO: New stock: 2  
[2026-07-07 20:50:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783450220064"} 
[2026-07-08 08:48:04] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783493282266","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":788,"product_id":788,"name":"Coldfree Capsules","sku":"1094","price":"5500.00","selling_price":"5500.00","purchase_price":"1800.00","quantity":1,"subtotal":5500,"product":{"id":788,"name":"Coldfree Capsules","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1094","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-25T11:05:13.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"247.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-07T16:08:28.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 08:48:04] production.INFO: Stock deduction for product: Coldfree Capsules  
[2026-07-08 08:48:04] production.INFO: Old stock: 10.00  
[2026-07-08 08:48:04] production.INFO: Quantity deducted: 1  
[2026-07-08 08:48:04] production.INFO: New stock: 9  
[2026-07-08 08:48:04] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-08 08:48:04] production.INFO: Old stock: 247.00  
[2026-07-08 08:48:04] production.INFO: Quantity deducted: 5  
[2026-07-08 08:48:04] production.INFO: New stock: 242  
[2026-07-08 08:48:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783493282266"} 
[2026-07-08 09:35:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783496103571","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"97.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-07T17:52:48.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"18.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-04T13:04:57.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-08 09:35:03] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-08 09:35:03] production.INFO: Old stock: 97.00  
[2026-07-08 09:35:03] production.INFO: Quantity deducted: 1  
[2026-07-08 09:35:03] production.INFO: New stock: 96  
[2026-07-08 09:35:03] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-07-08 09:35:03] production.INFO: Old stock: 18.00  
[2026-07-08 09:35:03] production.INFO: Quantity deducted: 1  
[2026-07-08 09:35:03] production.INFO: New stock: 17  
[2026-07-08 09:35:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783496103571"} 
[2026-07-08 09:35:36] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783496136834","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"16.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T16:08:28.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"20.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-28T11:43:44.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 09:35:36] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-08 09:35:36] production.INFO: Old stock: 16.00  
[2026-07-08 09:35:36] production.INFO: Quantity deducted: 1  
[2026-07-08 09:35:36] production.INFO: New stock: 15  
[2026-07-08 09:35:36] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-07-08 09:35:36] production.INFO: Old stock: 20.00  
[2026-07-08 09:35:36] production.INFO: Quantity deducted: 1  
[2026-07-08 09:35:36] production.INFO: New stock: 19  
[2026-07-08 09:35:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783496136834"} 
[2026-07-08 09:59:10] production.INFO: Stock Adjustment - Initial State {"product_id":"143","previous_quantity":"29.00","previous_selling_price":"3500.00","validated_data":{"product_id":"143","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-08"}} 
[2026-07-08 09:59:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":143,"new_quantity":79.0,"current_stock":79.0,"changes_made":"Quantity adjusted"} 
[2026-07-08 10:09:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783498196261","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":10,"subtotal":5000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"273.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T07:51:47.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 10:09:57] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-08 10:09:57] production.INFO: Old stock: 273.00  
[2026-07-08 10:09:57] production.INFO: Quantity deducted: 10  
[2026-07-08 10:09:57] production.INFO: New stock: 263  
[2026-07-08 10:09:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783498196261"} 
[2026-07-08 10:28:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783499297538","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":407,"product_id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","sku":"3044","price":"3000.00","selling_price":"3000.00","purchase_price":"1100.00","quantity":1,"subtotal":3000,"product":{"id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3044","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T14:32:31.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":417,"product_id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","sku":"3054","price":"1000.00","selling_price":"1000.00","purchase_price":"348.00","quantity":1,"subtotal":1000,"product":{"id":417,"name":"GLIBENCLAMIDE 5MG (GICLAMIDE)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"348.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3054","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-07T06:52:00.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":1,"subtotal":2000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-07-03T10:16:43.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 10:28:18] production.INFO: Stock deduction for product: Gentamcycin Eye/Ear Drop 5ml  
[2026-07-08 10:28:18] production.INFO: Old stock: 7.00  
[2026-07-08 10:28:18] production.INFO: Quantity deducted: 1  
[2026-07-08 10:28:18] production.INFO: New stock: 6  
[2026-07-08 10:28:18] production.INFO: Stock deduction for product: GLIBENCLAMIDE 5MG (GICLAMIDE)  
[2026-07-08 10:28:18] production.INFO: Old stock: 16.00  
[2026-07-08 10:28:18] production.INFO: Quantity deducted: 1  
[2026-07-08 10:28:18] production.INFO: New stock: 15  
[2026-07-08 10:28:18] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-07-08 10:28:18] production.INFO: Old stock: 4.00  
[2026-07-08 10:28:18] production.INFO: Quantity deducted: 1  
[2026-07-08 10:28:18] production.INFO: New stock: 3  
[2026-07-08 10:28:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783499297538"} 
[2026-07-08 10:31:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783499514017","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"78.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T16:09:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 10:31:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-08 10:31:54] production.INFO: Old stock: 78.00  
[2026-07-08 10:31:54] production.INFO: Quantity deducted: 1  
[2026-07-08 10:31:54] production.INFO: New stock: 77  
[2026-07-08 10:31:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783499514017"} 
[2026-07-08 11:02:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783501331612","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":185,"product_id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","sku":"0655","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0655","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-02T16:09:48.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-08 11:02:12] production.INFO: Stock deduction for product: CLAMOXIN 625MG Tablets (AUGMENTIN)  
[2026-07-08 11:02:12] production.INFO: Old stock: 3.00  
[2026-07-08 11:02:12] production.INFO: Quantity deducted: 1  
[2026-07-08 11:02:12] production.INFO: New stock: 2  
[2026-07-08 11:02:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783501331612"} 
[2026-07-08 12:09:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783505346042","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"36.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T09:50:47.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 12:09:06] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-07-08 12:09:06] production.INFO: Old stock: 36.00  
[2026-07-08 12:09:06] production.INFO: Quantity deducted: 1  
[2026-07-08 12:09:06] production.INFO: New stock: 35  
[2026-07-08 12:09:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783505346042"} 
[2026-07-08 13:36:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783510577356","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":281,"product_id":281,"name":"ENALAPRIL MALEATA TABLETS 10 MG (ENLOW)","sku":"0799","price":"2000.00","selling_price":"2000.00","purchase_price":"1200.00","quantity":1,"subtotal":2000,"product":{"id":281,"name":"ENALAPRIL MALEATA TABLETS 10 MG (ENLOW)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"49.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0799","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-01T16:02:28.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 13:36:18] production.INFO: Stock deduction for product: ENALAPRIL MALEATA TABLETS 10 MG (ENLOW)  
[2026-07-08 13:36:18] production.INFO: Old stock: 49.00  
[2026-07-08 13:36:18] production.INFO: Quantity deducted: 1  
[2026-07-08 13:36:18] production.INFO: New stock: 48  
[2026-07-08 13:36:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783510577356"} 
[2026-07-08 13:36:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783510599556","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":703,"product_id":703,"name":"Stalcal Tab( Calcium)","sku":"3340","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":7,"subtotal":21000,"product":{"id":703,"name":"Stalcal Tab( Calcium)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"28.00","stock":"30.00","product_type":"Single","tax":null,"sku":"3340","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T13:33:14.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-08 13:36:38] production.INFO: Stock deduction for product: Stalcal Tab( Calcium)  
[2026-07-08 13:36:38] production.INFO: Old stock: 28.00  
[2026-07-08 13:36:38] production.INFO: Quantity deducted: 7  
[2026-07-08 13:36:38] production.INFO: New stock: 21  
[2026-07-08 13:36:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783510599556"} 
[2026-07-08 13:37:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783510625324","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":1,"subtotal":2000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"21.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-06T14:38:08.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 13:37:04] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-07-08 13:37:04] production.INFO: Old stock: 21.00  
[2026-07-08 13:37:04] production.INFO: Quantity deducted: 1  
[2026-07-08 13:37:04] production.INFO: New stock: 20  
[2026-07-08 13:37:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783510625324"} 
[2026-07-08 13:37:56] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783510676979","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":2,"subtotal":2000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"96.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T08:24:15.000000Z","brand":null,"category":null}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"242.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T06:48:04.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 13:37:56] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-08 13:37:56] production.INFO: Old stock: 96.00  
[2026-07-08 13:37:56] production.INFO: Quantity deducted: 2  
[2026-07-08 13:37:56] production.INFO: New stock: 94  
[2026-07-08 13:37:56] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-08 13:37:56] production.INFO: Old stock: 242.00  
[2026-07-08 13:37:56] production.INFO: Quantity deducted: 5  
[2026-07-08 13:37:56] production.INFO: New stock: 237  
[2026-07-08 13:37:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783510676979"} 
[2026-07-08 13:38:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783510734404","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"96.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-08T07:35:03.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":5000}]}} 
[2026-07-08 13:48:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783511280227","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"56.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T16:07:18.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-08 13:48:00] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-08 13:48:00] production.INFO: Old stock: 56.00  
[2026-07-08 13:48:00] production.INFO: Quantity deducted: 1  
[2026-07-08 13:48:00] production.INFO: New stock: 55  
[2026-07-08 13:48:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783511280227"} 
[2026-07-08 13:58:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783511894080","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"237.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T11:37:56.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 13:58:14] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-08 13:58:14] production.INFO: Old stock: 237.00  
[2026-07-08 13:58:14] production.INFO: Quantity deducted: 10  
[2026-07-08 13:58:14] production.INFO: New stock: 227  
[2026-07-08 13:58:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783511894080"} 
[2026-07-08 14:14:50] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783512890270","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":2,"subtotal":600,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"252.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T16:08:28.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"227.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T11:58:14.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 14:14:50] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-08 14:14:50] production.INFO: Old stock: 252.00  
[2026-07-08 14:14:50] production.INFO: Quantity deducted: 2  
[2026-07-08 14:14:50] production.INFO: New stock: 250  
[2026-07-08 14:14:50] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-08 14:14:50] production.INFO: Old stock: 227.00  
[2026-07-08 14:14:50] production.INFO: Quantity deducted: 2  
[2026-07-08 14:14:50] production.INFO: New stock: 225  
[2026-07-08 14:14:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783512890270"} 
[2026-07-08 14:36:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783514165995","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"77.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-08T08:31:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-08 14:36:06] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-08 14:36:06] production.INFO: Old stock: 77.00  
[2026-07-08 14:36:06] production.INFO: Quantity deducted: 1  
[2026-07-08 14:36:06] production.INFO: New stock: 76  
[2026-07-08 14:36:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783514165995"} 
[2026-07-08 14:44:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783514685513","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":58,"product_id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","sku":"0672","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":2,"subtotal":3000,"product":{"id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0672","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-24T12:49:47.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 14:44:44] production.INFO: Stock deduction for product: AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB  
[2026-07-08 14:44:44] production.INFO: Old stock: 10.00  
[2026-07-08 14:44:44] production.INFO: Quantity deducted: 2  
[2026-07-08 14:44:44] production.INFO: New stock: 8  
[2026-07-08 14:44:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783514685513"} 
[2026-07-08 14:58:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783515534359","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"5.00","stock":"7.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-07T11:07:52.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-08 14:58:54] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-07-08 14:58:54] production.INFO: Old stock: 5.00  
[2026-07-08 14:58:54] production.INFO: Quantity deducted: 1  
[2026-07-08 14:58:54] production.INFO: New stock: 4  
[2026-07-08 14:58:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783515534359"} 
[2026-07-08 15:24:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783517093507","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"76.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-08T12:36:06.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 15:24:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-08 15:24:54] production.INFO: Old stock: 76.00  
[2026-07-08 15:24:54] production.INFO: Quantity deducted: 1  
[2026-07-08 15:24:54] production.INFO: New stock: 75  
[2026-07-08 15:24:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783517093507"} 
[2026-07-08 15:25:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783517149491","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"76.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-08T13:25:14.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-08 15:25:48] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-08 15:25:48] production.INFO: Old stock: 76.00  
[2026-07-08 15:25:48] production.INFO: Quantity deducted: 1  
[2026-07-08 15:25:48] production.INFO: New stock: 75  
[2026-07-08 15:25:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783517149491"} 
[2026-07-08 15:36:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783517816985","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"152.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T14:29:39.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 15:36:56] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-08 15:36:56] production.INFO: Old stock: 152.00  
[2026-07-08 15:36:56] production.INFO: Quantity deducted: 5  
[2026-07-08 15:36:56] production.INFO: New stock: 147  
[2026-07-08 15:36:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783517816985"} 
[2026-07-08 15:50:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783518618030","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":514,"product_id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","sku":"3151","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":1,"subtotal":500,"product":{"id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3151","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T16:36:49.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 15:50:18] production.INFO: Stock deduction for product: LOFNAC (DICLOFENAC 50MG) TABLETS  
[2026-07-08 15:50:18] production.INFO: Old stock: 9.00  
[2026-07-08 15:50:18] production.INFO: Quantity deducted: 1  
[2026-07-08 15:50:18] production.INFO: New stock: 8  
[2026-07-08 15:50:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783518618030"} 
[2026-07-08 16:10:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783519832012","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":2,"subtotal":3000,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"65.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-07T16:32:55.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":545,"product_id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","sku":"3182","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":1,"subtotal":3000,"product":{"id":545,"name":"MEFENAMIC ACID (FENAMEX) 500MG","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3182","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T14:05:52.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:10:31] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-08 16:10:31] production.INFO: Old stock: 65.00  
[2026-07-08 16:10:31] production.INFO: Quantity deducted: 2  
[2026-07-08 16:10:31] production.INFO: New stock: 63  
[2026-07-08 16:10:31] production.INFO: Stock deduction for product: MEFENAMIC ACID (FENAMEX) 500MG  
[2026-07-08 16:10:31] production.INFO: Old stock: 11.00  
[2026-07-08 16:10:31] production.INFO: Quantity deducted: 1  
[2026-07-08 16:10:31] production.INFO: New stock: 10  
[2026-07-08 16:10:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783519832012"} 
[2026-07-08 16:13:55] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783520034899","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":619,"product_id":619,"name":"P-ALAXIN TS","sku":"3256","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":619,"name":"P-ALAXIN TS","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"29.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3256","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-01T08:59:30.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"166.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-24T15:07:59.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"15.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-08T07:35:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"52.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T15:23:16.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:13:55] production.INFO: Stock deduction for product: P-ALAXIN TS  
[2026-07-08 16:13:55] production.INFO: Old stock: 29.00  
[2026-07-08 16:13:55] production.INFO: Quantity deducted: 1  
[2026-07-08 16:13:55] production.INFO: New stock: 28  
[2026-07-08 16:13:55] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-07-08 16:13:55] production.INFO: Old stock: 166.00  
[2026-07-08 16:13:55] production.INFO: Quantity deducted: 1  
[2026-07-08 16:13:55] production.INFO: New stock: 165  
[2026-07-08 16:13:55] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-08 16:13:55] production.INFO: Old stock: 15.00  
[2026-07-08 16:13:55] production.INFO: Quantity deducted: 1  
[2026-07-08 16:13:55] production.INFO: New stock: 14  
[2026-07-08 16:13:55] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-08 16:13:55] production.INFO: Old stock: 52.00  
[2026-07-08 16:13:55] production.INFO: Quantity deducted: 1  
[2026-07-08 16:13:55] production.INFO: New stock: 51  
[2026-07-08 16:13:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783520034899"} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521896973","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897003","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521896860","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521896924","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897128","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897158","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521896828","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521896957","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521896891","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Old stock: 25.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 24  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Old stock: 25.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 25.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 24.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Old stock: 25.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 23  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 24  
[2026-07-08 16:45:00] production.INFO: New stock: 24  
[2026-07-08 16:45:00] production.INFO: New stock: 24  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Old stock: 25.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 24  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Old stock: 96.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 96.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 25.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Old stock: 96.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 95  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 95  
[2026-07-08 16:45:00] production.INFO: New stock: 24  
[2026-07-08 16:45:00] production.INFO: New stock: 95  
[2026-07-08 16:45:00] production.INFO: Old stock: 23.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 95.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 22  
[2026-07-08 16:45:00] production.INFO: New stock: 94  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Old stock: 95.00  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Old stock: 95.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 94  
[2026-07-08 16:45:00] production.INFO: New stock: 94  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Old stock: 22.00  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Old stock: 5.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 4  
[2026-07-08 16:45:00] production.INFO: New stock: 21  
[2026-07-08 16:45:00] production.INFO: Old stock: 5.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 4  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Old stock: 94.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 93  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Old stock: 5.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 4  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Old stock: 94.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 4.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 93  
[2026-07-08 16:45:00] production.INFO: New stock: 3  
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521897003"} 
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Old stock: 4.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 3  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:00] production.INFO: Old stock: 22.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 21  
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521897034"} 
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521896973"} 
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521896957"} 
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521896860"} 
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Old stock: 93.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 92  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:00] production.INFO: Old stock: 92.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 91  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Old stock: 3.00  
[2026-07-08 16:45:00] production.INFO: Old stock: 3.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 2  
[2026-07-08 16:45:00] production.INFO: New stock: 2  
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Old stock: 5.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 4  
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521896891"} 
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521897128"} 
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521896828"} 
[2026-07-08 16:45:00] production.INFO: Old stock: 4.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 3  
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521897158"} 
[2026-07-08 16:45:00] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:00] production.INFO: Old stock: 2.00  
[2026-07-08 16:45:00] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:00] production.INFO: New stock: 1  
[2026-07-08 16:45:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521896924"} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897424","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897359","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897066","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897267","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:02] production.INFO: Old stock: 21.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 20  
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897220","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:02] production.INFO: Old stock: 20.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 19  
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:02] production.INFO: Old stock: 20.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 19  
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897189","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:02] production.INFO: Old stock: 91.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 90  
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 16:45:02] production.INFO: Old stock: 1.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 0  
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:02] production.INFO: Old stock: 90.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 89  
[2026-07-08 16:45:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783521897267"} 
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:02] production.INFO: Old stock: 91.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 90  
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897327","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897297","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897456","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897097","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:45:02] production.INFO: Old stock: 19.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 18  
[2026-07-08 16:45:02] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:45:02] production.INFO: Old stock: 90.00  
[2026-07-08 16:45:02] production.INFO: Quantity deducted: 1  
[2026-07-08 16:45:02] production.INFO: New stock: 89  
[2026-07-08 16:45:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897520","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897659","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897629","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897597","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897721","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897753","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897690","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897489","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897550","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897784","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897925","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897847","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897894","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:04] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897987","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898048","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521897955","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898017","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898080","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898162","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898190","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898376","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898220","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:05] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898251","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898422","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898282","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898344","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898313","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898454","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898485","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:06] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898516","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898578","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898548","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898747","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898676","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898639","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898717","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898777","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898809","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898870","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898839","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899070","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898947","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899009","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898916","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521898979","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:08] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899040","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899148","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899101","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899178","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899209","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899240","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899272","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899303","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899336","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899367","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:09] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899464","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899401","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899432","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899634","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899572","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899511","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899542","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899602","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899666","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:10] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899698","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899743","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899772","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899804","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899930","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899960","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899835","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899866","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899898","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521899992","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:11] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900037","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900068","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900131","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900193","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900099","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900395","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900301","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:12] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900162","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900490","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900224","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900459","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900362","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900427","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900331","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900270","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900724","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:13] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900553","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900522","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900601","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900755","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900633","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900786","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900662","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900693","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900818","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900896","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901083","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900865","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900928","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901253","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901160","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900959","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901020","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901392","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901347","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901222","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:15] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521900989","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901285","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901317","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901581","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901129","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901052","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901457","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:16] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901550","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901411","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901519","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901488","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901191","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901642","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901611","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901722","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901688","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901754","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:17] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901786","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901841","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901880","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902150","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901817","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902038","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902007","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901976","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:18] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902181","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902103","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902211","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901943","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902305","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521901912","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902242","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902273","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:45:19] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783521902336","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:49:11.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"96.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T11:16:18.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-06T10:08:37.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:59:49] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783522789553","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":233,"product_id":233,"name":"DEPO Injection","sku":"1088","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":233,"name":"DEPO Injection","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"32.00","stock":"25.00","product_type":"Single","tax":null,"sku":"1088","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-08T14:59:06.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"103.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T14:59:06.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 16:59:49] production.INFO: Stock deduction for product: DEPO Injection  
[2026-07-08 16:59:49] production.INFO: Old stock: 32.00  
[2026-07-08 16:59:49] production.INFO: Quantity deducted: 1  
[2026-07-08 16:59:49] production.INFO: New stock: 31  
[2026-07-08 16:59:49] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-08 16:59:49] production.INFO: Old stock: 103.00  
[2026-07-08 16:59:49] production.INFO: Quantity deducted: 1  
[2026-07-08 16:59:49] production.INFO: New stock: 102  
[2026-07-08 16:59:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783522789553"} 
[2026-07-08 17:00:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783522812529","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-08T14:59:06.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 17:00:15] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 17:00:15] production.INFO: Old stock: 11.00  
[2026-07-08 17:00:15] production.INFO: Quantity deducted: 1  
[2026-07-08 17:00:15] production.INFO: New stock: 10  
[2026-07-08 17:00:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783522812529"} 
[2026-07-08 17:04:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783523095520","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":696,"product_id":696,"name":"SINURRHON SYRUP","sku":"3333","price":"4500.00","selling_price":"4500.00","purchase_price":"2200.00","quantity":1,"subtotal":4500,"product":{"id":696,"name":"SINURRHON SYRUP","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2200.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3333","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T16:04:31.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 17:04:56] production.INFO: Stock deduction for product: SINURRHON SYRUP  
[2026-07-08 17:04:56] production.INFO: Old stock: 1.00  
[2026-07-08 17:04:56] production.INFO: Quantity deducted: 1  
[2026-07-08 17:04:56] production.INFO: New stock: 0  
[2026-07-08 17:04:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783523095520"} 
[2026-07-08 17:06:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783523192671","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"11.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-07T06:25:09.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 17:06:32] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-07-08 17:06:32] production.INFO: Old stock: 11.00  
[2026-07-08 17:06:32] production.INFO: Quantity deducted: 1  
[2026-07-08 17:06:32] production.INFO: New stock: 10  
[2026-07-08 17:06:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783523192671"} 
[2026-07-08 17:07:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783523267502","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":472,"product_id":472,"name":"Junior Zinc 20MG","sku":"3109","price":"1000.00","selling_price":"1000.00","purchase_price":"395.00","quantity":2,"subtotal":2000,"product":{"id":472,"name":"Junior Zinc 20MG","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"395.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3109","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-30T09:14:42.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-08 17:07:48] production.INFO: Stock deduction for product: Junior Zinc 20MG  
[2026-07-08 17:07:48] production.INFO: Old stock: 2.00  
[2026-07-08 17:07:48] production.INFO: Quantity deducted: 2  
[2026-07-08 17:07:48] production.INFO: New stock: 0  
[2026-07-08 17:07:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783523267502"} 
[2026-07-08 17:14:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783523648053","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"23.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T14:29:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 17:14:07] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-08 17:14:07] production.INFO: Old stock: 23.00  
[2026-07-08 17:14:07] production.INFO: Quantity deducted: 1  
[2026-07-08 17:14:07] production.INFO: New stock: 22  
[2026-07-08 17:14:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783523648053"} 
[2026-07-08 17:23:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783524188466","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"225.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T12:14:50.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 17:23:08] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-08 17:23:08] production.INFO: Old stock: 225.00  
[2026-07-08 17:23:08] production.INFO: Quantity deducted: 1  
[2026-07-08 17:23:08] production.INFO: New stock: 224  
[2026-07-08 17:23:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783524188466"} 
[2026-07-08 18:08:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783526889346","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"95.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-08T11:38:53.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 18:08:09] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-08 18:08:09] production.INFO: Old stock: 95.00  
[2026-07-08 18:08:09] production.INFO: Quantity deducted: 1  
[2026-07-08 18:08:09] production.INFO: New stock: 94  
[2026-07-08 18:08:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783526889346"} 
[2026-07-08 18:12:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783527154849","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":903,"product_id":903,"name":"Muco Asthalin","sku":"PRD-00903","price":"10500.00","selling_price":"10500.00","purchase_price":"5500.00","quantity":1,"subtotal":10500,"product":{"id":903,"name":"Muco Asthalin","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5500.00","last_purchase_price":"5500.00","selling_price":"10500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00903","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:52:22.000000Z","updated_at":"2026-06-30T13:48:05.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 18:12:35] production.INFO: Stock deduction for product: Muco Asthalin  
[2026-07-08 18:12:35] production.INFO: Old stock: 7.00  
[2026-07-08 18:12:35] production.INFO: Quantity deducted: 1  
[2026-07-08 18:12:35] production.INFO: New stock: 6  
[2026-07-08 18:12:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783527154849"} 
[2026-07-08 18:34:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783528471226","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":107,"product_id":107,"name":"Benylin Dry -100ml","sku":"1310","price":"30000.00","selling_price":"30000.00","purchase_price":"15500.00","quantity":1,"subtotal":30000,"product":{"id":107,"name":"Benylin Dry -100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"15500.00","last_purchase_price":null,"selling_price":"30000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T12:13:55.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 18:34:31] production.INFO: Stock deduction for product: Benylin Dry -100ml  
[2026-07-08 18:34:31] production.INFO: Old stock: 1.00  
[2026-07-08 18:34:31] production.INFO: Quantity deducted: 1  
[2026-07-08 18:34:31] production.INFO: New stock: 0  
[2026-07-08 18:34:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783528471226"} 
[2026-07-08 19:19:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783531155582","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":71,"product_id":71,"name":"Antagit DS Gel 100ml","sku":"1184","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":71,"name":"Antagit DS Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"27","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"28.00","stock":"28.00","product_type":"Single","tax":null,"sku":"1184","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T18:46:09.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 19:19:16] production.INFO: Stock deduction for product: Antagit DS Gel 100ml  
[2026-07-08 19:19:16] production.INFO: Old stock: 28.00  
[2026-07-08 19:19:16] production.INFO: Quantity deducted: 1  
[2026-07-08 19:19:16] production.INFO: New stock: 27  
[2026-07-08 19:19:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783531155582"} 
[2026-07-08 19:23:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783531386660","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"BENYLIN 4FLU-200ML","sku":"1246","price":"40000.00","selling_price":"40000.00","purchase_price":"21500.00","quantity":1,"subtotal":40000,"product":{"id":104,"name":"BENYLIN 4FLU-200ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"21500.00","last_purchase_price":null,"selling_price":"40000.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1246","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-07","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-03T13:20:55.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-08 19:23:06] production.INFO: Stock deduction for product: BENYLIN 4FLU-200ML  
[2026-07-08 19:23:06] production.INFO: Old stock: 7.00  
[2026-07-08 19:23:06] production.INFO: Quantity deducted: 1  
[2026-07-08 19:23:06] production.INFO: New stock: 6  
[2026-07-08 19:23:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783531386660"} 
[2026-07-08 19:32:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783531950825","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"94.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-08T16:08:09.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 19:32:31] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-08 19:32:31] production.INFO: Old stock: 94.00  
[2026-07-08 19:32:31] production.INFO: Quantity deducted: 1  
[2026-07-08 19:32:31] production.INFO: New stock: 93  
[2026-07-08 19:32:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783531950825"} 
[2026-07-08 19:42:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783532557118","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":212,"product_id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","sku":"0732","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":2,"subtotal":4000,"product":{"id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"3.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0732","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-18T17:41:27.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":225,"product_id":225,"name":"Delased Paediatric Cough (Syrup)","sku":"1159","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":225,"name":"Delased Paediatric Cough (Syrup)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"31","brand_id":"9","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"1159","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-05-27T06:43:10.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 19:42:37] production.INFO: Stock deduction for product: DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml  
[2026-07-08 19:42:37] production.INFO: Old stock: 3.00  
[2026-07-08 19:42:37] production.INFO: Quantity deducted: 2  
[2026-07-08 19:42:37] production.INFO: New stock: 1  
[2026-07-08 19:42:37] production.INFO: Stock deduction for product: Delased Paediatric Cough (Syrup)  
[2026-07-08 19:42:37] production.INFO: Old stock: 5.00  
[2026-07-08 19:42:37] production.INFO: Quantity deducted: 1  
[2026-07-08 19:42:37] production.INFO: New stock: 4  
[2026-07-08 19:42:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783532557118"} 
[2026-07-08 20:11:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783534285780","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"32.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-07-06T07:07:44.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-08T15:00:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 20:11:25] production.INFO: Stock deduction for product: Active C  
[2026-07-08 20:11:25] production.INFO: Old stock: 32.00  
[2026-07-08 20:11:25] production.INFO: Quantity deducted: 1  
[2026-07-08 20:11:25] production.INFO: New stock: 31  
[2026-07-08 20:11:25] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-08 20:11:25] production.INFO: Old stock: 10.00  
[2026-07-08 20:11:25] production.INFO: Quantity deducted: 1  
[2026-07-08 20:11:25] production.INFO: New stock: 9  
[2026-07-08 20:11:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783534285780"} 
[2026-07-08 20:42:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783536144106","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":795,"product_id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","sku":"0750","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":795,"name":"COMIT-100 (Sildenafil 100mg tablets)","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0750","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-04T12:30:40.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 20:42:23] production.INFO: Stock deduction for product: COMIT-100 (Sildenafil 100mg tablets)  
[2026-07-08 20:42:23] production.INFO: Old stock: 12.00  
[2026-07-08 20:42:23] production.INFO: Quantity deducted: 1  
[2026-07-08 20:42:23] production.INFO: New stock: 11  
[2026-07-08 20:42:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783536144106"} 
[2026-07-08 20:46:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783536397264","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":58,"product_id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","sku":"0672","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":58,"name":"AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0672","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-08T12:44:44.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":1,"subtotal":1500,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"74.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T08:25:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 20:46:37] production.INFO: Stock deduction for product: AMITRIPTYLINE 25MG (AMILEB)-STRIP OF 10 TAB  
[2026-07-08 20:46:37] production.INFO: Old stock: 8.00  
[2026-07-08 20:46:37] production.INFO: Quantity deducted: 1  
[2026-07-08 20:46:37] production.INFO: New stock: 7  
[2026-07-08 20:46:37] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-07-08 20:46:37] production.INFO: Old stock: 74.00  
[2026-07-08 20:46:37] production.INFO: Quantity deducted: 1  
[2026-07-08 20:46:37] production.INFO: New stock: 73  
[2026-07-08 20:46:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783536397264"} 
[2026-07-08 20:50:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783536645263","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":822,"product_id":822,"name":"Rinacet Syrup","sku":"PRD-00822","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":822,"name":"Rinacet Syrup","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1500.00","selling_price":"3500.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00822","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":"2026-03-18","created_at":"2026-03-18T07:36:25.000000Z","updated_at":"2026-06-03T07:28:48.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-08 20:50:44] production.INFO: Stock deduction for product: Rinacet Syrup  
[2026-07-08 20:50:44] production.INFO: Old stock: 5.00  
[2026-07-08 20:50:44] production.INFO: Quantity deducted: 1  
[2026-07-08 20:50:44] production.INFO: New stock: 4  
[2026-07-08 20:50:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783536645263"} 
[2026-07-08 21:02:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783537332411","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":200,"product_id":200,"name":"DACOF EXPECTORANT SYRUP","sku":"0761","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":200,"name":"DACOF EXPECTORANT SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"8.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0761","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-03T15:15:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-08 21:02:11] production.INFO: Stock deduction for product: DACOF EXPECTORANT SYRUP  
[2026-07-08 21:02:11] production.INFO: Old stock: 8.00  
[2026-07-08 21:02:11] production.INFO: Quantity deducted: 1  
[2026-07-08 21:02:11] production.INFO: New stock: 7  
[2026-07-08 21:02:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783537332411"} 
[2026-07-09 08:40:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783579249173","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":979,"product_id":979,"name":"Aluminium Hydroxide Suspension (Gasner Gel Suspension)","sku":"PRD-00979","price":"5500.00","selling_price":"5500.00","purchase_price":"2700.00","quantity":1,"subtotal":5500,"product":{"id":979,"name":"Aluminium Hydroxide Suspension (Gasner Gel Suspension)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2700.00","last_purchase_price":"2700.00","selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00979","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T15:18:34.000000Z","updated_at":"2026-07-03T15:18:34.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 08:40:51] production.INFO: Stock deduction for product: Aluminium Hydroxide Suspension (Gasner Gel Suspension)  
[2026-07-09 08:40:51] production.INFO: Old stock: 5.00  
[2026-07-09 08:40:51] production.INFO: Quantity deducted: 1  
[2026-07-09 08:40:51] production.INFO: New stock: 4  
[2026-07-09 08:40:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783579249173"} 
[2026-07-09 08:41:12] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783579270084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":200,"product_id":200,"name":"DACOF EXPECTORANT SYRUP","sku":"0761","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":200,"name":"DACOF EXPECTORANT SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"7.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0761","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-08T19:02:11.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"51.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T14:13:55.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 08:41:12] production.INFO: Stock deduction for product: DACOF EXPECTORANT SYRUP  
[2026-07-09 08:41:12] production.INFO: Old stock: 7.00  
[2026-07-09 08:41:12] production.INFO: Quantity deducted: 1  
[2026-07-09 08:41:12] production.INFO: New stock: 6  
[2026-07-09 08:41:12] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-09 08:41:12] production.INFO: Old stock: 51.00  
[2026-07-09 08:41:12] production.INFO: Quantity deducted: 1  
[2026-07-09 08:41:12] production.INFO: New stock: 50  
[2026-07-09 08:41:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783579270084"} 
[2026-07-09 08:41:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783579293177","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"157.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-06T13:38:38.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 08:41:35] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-09 08:41:35] production.INFO: Old stock: 157.00  
[2026-07-09 08:41:35] production.INFO: Quantity deducted: 1  
[2026-07-09 08:41:35] production.INFO: New stock: 156  
[2026-07-09 08:41:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783579293177"} 
[2026-07-09 08:43:13] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783579391867","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":383,"product_id":383,"name":"FRICKS SYRUP 100MLS","sku":"3020","price":"7500.00","selling_price":"7500.00","purchase_price":"3950.00","quantity":1,"subtotal":7500,"product":{"id":383,"name":"FRICKS SYRUP 100MLS","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3020","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-17T06:41:26.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"14.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-08T14:13:55.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-09 08:43:13] production.INFO: Stock deduction for product: FRICKS SYRUP 100MLS  
[2026-07-09 08:43:13] production.INFO: Old stock: 3.00  
[2026-07-09 08:43:13] production.INFO: Quantity deducted: 1  
[2026-07-09 08:43:13] production.INFO: New stock: 2  
[2026-07-09 08:43:14] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-09 08:43:14] production.INFO: Old stock: 14.00  
[2026-07-09 08:43:14] production.INFO: Quantity deducted: 1  
[2026-07-09 08:43:14] production.INFO: New stock: 13  
[2026-07-09 08:43:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783579391867"} 
[2026-07-09 09:00:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783580412558","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":497,"product_id":497,"name":"Labesten Vaginal Tablets","sku":"3134","price":"2500.00","selling_price":"2500.00","purchase_price":"1080.00","quantity":1,"subtotal":2500,"product":{"id":497,"name":"Labesten Vaginal Tablets","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1080.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3134","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-20T15:30:59.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-09 09:00:13] production.INFO: Stock deduction for product: Labesten Vaginal Tablets  
[2026-07-09 09:00:13] production.INFO: Old stock: 3.00  
[2026-07-09 09:00:13] production.INFO: Quantity deducted: 1  
[2026-07-09 09:00:13] production.INFO: New stock: 2  
[2026-07-09 09:00:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783580412558"} 
[2026-07-09 09:15:20] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783581320572","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":372,"product_id":372,"name":"FASTACT GEL, 20g","sku":"3009","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":372,"name":"FASTACT GEL, 20g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"10","supplier_id":null,"purchase_price":"1700.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3009","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-04T14:53:13.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":458,"product_id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","sku":"3095","price":"1500.00","selling_price":"1500.00","purchase_price":"760.00","quantity":1,"subtotal":1500,"product":{"id":458,"name":"IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"760.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"23.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3095","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T14:02:39.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 09:15:21] production.INFO: Stock deduction for product: FASTACT GEL, 20g  
[2026-07-09 09:15:21] production.INFO: Old stock: 1.00  
[2026-07-09 09:15:21] production.INFO: Quantity deducted: 1  
[2026-07-09 09:15:21] production.INFO: New stock: 0  
[2026-07-09 09:15:21] production.INFO: Stock deduction for product: IBUCAP (IBUPROFEN+PCM+CAFFEINE) CAPS  
[2026-07-09 09:15:21] production.INFO: Old stock: 23.00  
[2026-07-09 09:15:21] production.INFO: Quantity deducted: 1  
[2026-07-09 09:15:21] production.INFO: New stock: 22  
[2026-07-09 09:15:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783581320572"} 
[2026-07-09 09:47:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783583271141","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"165.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-08T14:13:55.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 09:47:51] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-07-09 09:47:51] production.INFO: Old stock: 165.00  
[2026-07-09 09:47:51] production.INFO: Quantity deducted: 1  
[2026-07-09 09:47:51] production.INFO: New stock: 164  
[2026-07-09 09:47:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783583271141"} 
[2026-07-09 10:01:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783584095499","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":87,"product_id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","sku":"0688","price":"800.00","selling_price":"800.00","purchase_price":"495.00","quantity":10,"subtotal":8000,"product":{"id":87,"name":"ATENOLOL 50MG (ATELEB) Strip of 10 Tablets","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"495.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"29.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0688","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T14:38:08.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"78.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T16:18:42.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-09 10:01:35] production.INFO: Stock deduction for product: ATENOLOL 50MG (ATELEB) Strip of 10 Tablets  
[2026-07-09 10:01:35] production.INFO: Old stock: 29.00  
[2026-07-09 10:01:35] production.INFO: Quantity deducted: 10  
[2026-07-09 10:01:35] production.INFO: New stock: 19  
[2026-07-09 10:01:35] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-09 10:01:35] production.INFO: Old stock: 78.00  
[2026-07-09 10:01:35] production.INFO: Quantity deducted: 2  
[2026-07-09 10:01:35] production.INFO: New stock: 76  
[2026-07-09 10:01:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783584095499"} 
[2026-07-09 10:13:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783584816801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":514,"product_id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","sku":"3151","price":"500.00","selling_price":"500.00","purchase_price":"275.00","quantity":4,"subtotal":2000,"product":{"id":514,"name":"LOFNAC (DICLOFENAC 50MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"275.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3151","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-08T13:50:18.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 10:13:37] production.INFO: Stock deduction for product: LOFNAC (DICLOFENAC 50MG) TABLETS  
[2026-07-09 10:13:37] production.INFO: Old stock: 8.00  
[2026-07-09 10:13:37] production.INFO: Quantity deducted: 4  
[2026-07-09 10:13:37] production.INFO: New stock: 4  
[2026-07-09 10:13:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783584816801"} 
[2026-07-09 10:42:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783586567163","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":148,"product_id":148,"name":"CALAMINE LOTION 100ML","sku":"0716","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":148,"name":"CALAMINE LOTION 100ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0716","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-04T16:21:33.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"17.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T15:49:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 10:42:48] production.INFO: Stock deduction for product: CALAMINE LOTION 100ML  
[2026-07-09 10:42:48] production.INFO: Old stock: 8.00  
[2026-07-09 10:42:48] production.INFO: Quantity deducted: 1  
[2026-07-09 10:42:48] production.INFO: New stock: 7  
[2026-07-09 10:42:48] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-09 10:42:48] production.INFO: Old stock: 17.00  
[2026-07-09 10:42:48] production.INFO: Quantity deducted: 1  
[2026-07-09 10:42:48] production.INFO: New stock: 16  
[2026-07-09 10:42:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783586567163"} 
[2026-07-09 10:42:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783586569723","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":148,"product_id":148,"name":"CALAMINE LOTION 100ML","sku":"0716","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":148,"name":"CALAMINE LOTION 100ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0716","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-04T16:21:33.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"17.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T15:49:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 10:42:48] production.INFO: Stock deduction for product: CALAMINE LOTION 100ML  
[2026-07-09 10:42:48] production.INFO: Old stock: 7.00  
[2026-07-09 10:42:48] production.INFO: Quantity deducted: 1  
[2026-07-09 10:42:48] production.INFO: New stock: 6  
[2026-07-09 10:42:48] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-09 10:42:48] production.INFO: Old stock: 16.00  
[2026-07-09 10:42:48] production.INFO: Quantity deducted: 1  
[2026-07-09 10:42:48] production.INFO: New stock: 15  
[2026-07-09 10:42:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783586569723"} 
[2026-07-09 11:37:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783589858913","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"50.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-09T06:41:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 11:37:38] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-09 11:37:38] production.INFO: Old stock: 50.00  
[2026-07-09 11:37:38] production.INFO: Quantity deducted: 1  
[2026-07-09 11:37:38] production.INFO: New stock: 49  
[2026-07-09 11:37:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783589858913"} 
[2026-07-09 11:54:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783590894102","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"13.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T06:43:14.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 11:54:53] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-09 11:54:53] production.INFO: Old stock: 13.00  
[2026-07-09 11:54:53] production.INFO: Quantity deducted: 1  
[2026-07-09 11:54:53] production.INFO: New stock: 12  
[2026-07-09 11:54:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783590894102"} 
[2026-07-09 12:15:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783592144434","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"12.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T09:54:53.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 12:15:44] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-09 12:15:44] production.INFO: Old stock: 12.00  
[2026-07-09 12:15:44] production.INFO: Quantity deducted: 1  
[2026-07-09 12:15:44] production.INFO: New stock: 11  
[2026-07-09 12:15:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783592144434"} 
[2026-07-09 12:35:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783593338111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":81,"product_id":81,"name":"Ashton and pearsons","sku":"1039","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":3,"subtotal":6000,"product":{"id":81,"name":"Ashton and pearsons","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"22.00","stock":"45.00","product_type":"Single","tax":null,"sku":"1039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-12T14:59:51.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 12:35:38] production.INFO: Stock deduction for product: Ashton and pearsons  
[2026-07-09 12:35:38] production.INFO: Old stock: 22.00  
[2026-07-09 12:35:38] production.INFO: Quantity deducted: 3  
[2026-07-09 12:35:38] production.INFO: New stock: 19  
[2026-07-09 12:35:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783593338111"} 
[2026-07-09 12:59:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783594760658","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":888,"product_id":888,"name":"Eno fruit salt","sku":"PRD-00888","price":"4500.00","selling_price":"4500.00","purchase_price":"2100.00","quantity":4,"subtotal":18000,"product":{"id":888,"name":"Eno fruit salt","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2100.00","last_purchase_price":"2100.00","selling_price":"4500.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00888","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:41:42.000000Z","updated_at":"2026-06-20T15:11:53.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 12:59:20] production.INFO: Stock deduction for product: Eno fruit salt  
[2026-07-09 12:59:20] production.INFO: Old stock: 16.00  
[2026-07-09 12:59:20] production.INFO: Quantity deducted: 4  
[2026-07-09 12:59:20] production.INFO: New stock: 12  
[2026-07-09 12:59:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783594760658"} 
[2026-07-09 13:11:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783595466176","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":3,"subtotal":3000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"22.00","stock":"77.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-08T15:14:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 13:11:06] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-09 13:11:06] production.INFO: Old stock: 22.00  
[2026-07-09 13:11:06] production.INFO: Quantity deducted: 3  
[2026-07-09 13:11:06] production.INFO: New stock: 19  
[2026-07-09 13:11:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783595466176"} 
[2026-07-09 13:47:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783597620237","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"42.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-07T14:55:46.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 13:47:01] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-09 13:47:01] production.INFO: Old stock: 42.00  
[2026-07-09 13:47:01] production.INFO: Quantity deducted: 1  
[2026-07-09 13:47:01] production.INFO: New stock: 41  
[2026-07-09 13:47:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783597620237"} 
[2026-07-09 14:03:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783598607552","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":495,"product_id":495,"name":"LA WASH INTIMET HYGIEN","sku":"3132","price":"15000.00","selling_price":"15000.00","purchase_price":"7900.00","quantity":1,"subtotal":15000,"product":{"id":495,"name":"LA WASH INTIMET HYGIEN","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"7900.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3132","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-23T06:56:36.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 14:03:26] production.INFO: Stock deduction for product: LA WASH INTIMET HYGIEN  
[2026-07-09 14:03:26] production.INFO: Old stock: 2.00  
[2026-07-09 14:03:26] production.INFO: Quantity deducted: 1  
[2026-07-09 14:03:26] production.INFO: New stock: 1  
[2026-07-09 14:03:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783598607552"} 
[2026-07-09 14:03:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783598623607","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":202,"product_id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","sku":"0763","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":202,"name":"DACOF PEADEATRIC SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"2.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0763","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-05T14:00:03.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 14:03:42] production.INFO: Stock deduction for product: DACOF PEADEATRIC SYRUP, 100ml  
[2026-07-09 14:03:42] production.INFO: Old stock: 2.00  
[2026-07-09 14:03:42] production.INFO: Quantity deducted: 1  
[2026-07-09 14:03:42] production.INFO: New stock: 1  
[2026-07-09 14:03:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783598623607"} 
[2026-07-09 14:56:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783601806017","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":888,"product_id":888,"name":"Eno fruit salt","sku":"PRD-00888","price":"4500.00","selling_price":"4500.00","purchase_price":"2100.00","quantity":1,"subtotal":4500,"product":{"id":888,"name":"Eno fruit salt","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2100.00","last_purchase_price":"2100.00","selling_price":"4500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00888","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:41:42.000000Z","updated_at":"2026-07-09T10:59:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 14:56:48] production.INFO: Stock deduction for product: Eno fruit salt  
[2026-07-09 14:56:48] production.INFO: Old stock: 12.00  
[2026-07-09 14:56:48] production.INFO: Quantity deducted: 1  
[2026-07-09 14:56:48] production.INFO: New stock: 11  
[2026-07-09 14:56:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783601806017"} 
[2026-07-09 14:57:08] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783601826344","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":2,"subtotal":1000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"263.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-08T08:09:57.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"103.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T18:57:43.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 14:57:08] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-09 14:57:08] production.INFO: Old stock: 263.00  
[2026-07-09 14:57:08] production.INFO: Quantity deducted: 2  
[2026-07-09 14:57:08] production.INFO: New stock: 261  
[2026-07-09 14:57:08] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-09 14:57:08] production.INFO: Old stock: 103.00  
[2026-07-09 14:57:08] production.INFO: Quantity deducted: 1  
[2026-07-09 14:57:08] production.INFO: New stock: 102  
[2026-07-09 14:57:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783601826344"} 
[2026-07-09 15:01:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783602077882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"224.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T15:23:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 15:01:20] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-09 15:01:20] production.INFO: Old stock: 224.00  
[2026-07-09 15:01:20] production.INFO: Quantity deducted: 2  
[2026-07-09 15:01:20] production.INFO: New stock: 222  
[2026-07-09 15:01:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783602077882"} 
[2026-07-09 15:07:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783602431894","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":1,"subtotal":1000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"32.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-03T17:44:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 15:07:14] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-07-09 15:07:14] production.INFO: Old stock: 32.00  
[2026-07-09 15:07:14] production.INFO: Quantity deducted: 1  
[2026-07-09 15:07:14] production.INFO: New stock: 31  
[2026-07-09 15:07:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783602431894"} 
[2026-07-09 15:08:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783602519432","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":176,"product_id":176,"name":"CINAMMON POWDER 100GM","sku":"0994","price":"3500.00","selling_price":"3500.00","purchase_price":"2000.00","quantity":1,"subtotal":3500,"product":{"id":176,"name":"CINAMMON POWDER 100GM","business_location":"EDUC Pharmacy","unit_id":"5","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0994","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-04-11T08:24:06.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 15:08:41] production.INFO: Stock deduction for product: CINAMMON POWDER 100GM  
[2026-07-09 15:08:41] production.INFO: Old stock: 4.00  
[2026-07-09 15:08:41] production.INFO: Quantity deducted: 1  
[2026-07-09 15:08:41] production.INFO: New stock: 3  
[2026-07-09 15:08:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783602519432"} 
[2026-07-09 15:48:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783604926286","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"11.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T14:29:39.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 15:48:49] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-09 15:48:49] production.INFO: Old stock: 11.00  
[2026-07-09 15:48:49] production.INFO: Quantity deducted: 1  
[2026-07-09 15:48:49] production.INFO: New stock: 10  
[2026-07-09 15:48:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783604926286"} 
[2026-07-09 16:02:10] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783605728951","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-06-24T14:57:06.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":1,"subtotal":1000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"31.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-09T13:07:14.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 16:02:11] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-07-09 16:02:11] production.INFO: Old stock: 1.00  
[2026-07-09 16:02:11] production.INFO: Quantity deducted: 1  
[2026-07-09 16:02:11] production.INFO: New stock: 0  
[2026-07-09 16:02:11] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-07-09 16:02:11] production.INFO: Old stock: 31.00  
[2026-07-09 16:02:11] production.INFO: Quantity deducted: 1  
[2026-07-09 16:02:11] production.INFO: New stock: 30  
[2026-07-09 16:02:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783605728951"} 
[2026-07-09 16:54:15] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783608851866","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"222.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-09T13:01:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":217,"product_id":217,"name":"Dawasprin 75","sku":"1369","price":"1000.00","selling_price":"1000.00","purchase_price":"420.00","quantity":3,"subtotal":3000,"product":{"id":217,"name":"Dawasprin 75","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"7","brand_id":"31","supplier_id":null,"purchase_price":"420.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"17.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1369","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-01T18:24:29.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":3,"subtotal":4500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"63.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-08T14:10:31.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"250.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-08T12:14:50.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 16:54:15] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-09 16:54:15] production.INFO: Old stock: 222.00  
[2026-07-09 16:54:15] production.INFO: Quantity deducted: 2  
[2026-07-09 16:54:15] production.INFO: New stock: 220  
[2026-07-09 16:54:15] production.INFO: Stock deduction for product: Dawasprin 75  
[2026-07-09 16:54:15] production.INFO: Old stock: 17.00  
[2026-07-09 16:54:15] production.INFO: Quantity deducted: 3  
[2026-07-09 16:54:15] production.INFO: New stock: 14  
[2026-07-09 16:54:15] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-09 16:54:15] production.INFO: Old stock: 63.00  
[2026-07-09 16:54:15] production.INFO: Quantity deducted: 3  
[2026-07-09 16:54:15] production.INFO: New stock: 60  
[2026-07-09 16:54:15] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-09 16:54:15] production.INFO: Old stock: 250.00  
[2026-07-09 16:54:15] production.INFO: Quantity deducted: 1  
[2026-07-09 16:54:15] production.INFO: New stock: 249  
[2026-07-09 16:54:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783608851866"} 
[2026-07-09 17:12:32] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783609952726","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"82.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-05T13:36:25.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":61,"product_id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","sku":"0674","price":"1500.00","selling_price":"1500.00","purchase_price":"600.00","quantity":4,"subtotal":6000,"product":{"id":61,"name":"AMLODIPINE 5MG (AMLODAWA) 10s","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"600.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"20.00","stock":"35.00","product_type":"Single","tax":null,"sku":"0674","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-01T07:45:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"76.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T08:01:35.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 17:12:32] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-07-09 17:12:32] production.INFO: Old stock: 82.00  
[2026-07-09 17:12:32] production.INFO: Quantity deducted: 1  
[2026-07-09 17:12:32] production.INFO: New stock: 81  
[2026-07-09 17:12:32] production.INFO: Stock deduction for product: AMLODIPINE 5MG (AMLODAWA) 10s  
[2026-07-09 17:12:32] production.INFO: Old stock: 20.00  
[2026-07-09 17:12:32] production.INFO: Quantity deducted: 4  
[2026-07-09 17:12:32] production.INFO: New stock: 16  
[2026-07-09 17:12:33] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-09 17:12:33] production.INFO: Old stock: 76.00  
[2026-07-09 17:12:33] production.INFO: Quantity deducted: 2  
[2026-07-09 17:12:33] production.INFO: New stock: 74  
[2026-07-09 17:12:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783609952726"} 
[2026-07-09 17:23:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783610581612","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"27.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-07T16:08:52.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 17:23:00] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-09 17:23:00] production.INFO: Old stock: 27.00  
[2026-07-09 17:23:00] production.INFO: Quantity deducted: 1  
[2026-07-09 17:23:00] production.INFO: New stock: 26  
[2026-07-09 17:23:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783610581612"} 
[2026-07-09 17:37:21] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783611440197","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":689,"product_id":689,"name":"Shaver","sku":"3326","price":"1000.00","selling_price":"1000.00","purchase_price":"416.00","quantity":1,"subtotal":1000,"product":{"id":689,"name":"Shaver","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"416.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3326","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-28T13:06:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-06-27T18:43:19.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"75.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-08T13:25:48.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 17:37:21] production.INFO: Stock deduction for product: Shaver  
[2026-07-09 17:37:21] production.INFO: Old stock: 4.00  
[2026-07-09 17:37:21] production.INFO: Quantity deducted: 1  
[2026-07-09 17:37:21] production.INFO: New stock: 3  
[2026-07-09 17:37:21] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-07-09 17:37:21] production.INFO: Old stock: 12.00  
[2026-07-09 17:37:21] production.INFO: Quantity deducted: 1  
[2026-07-09 17:37:21] production.INFO: New stock: 11  
[2026-07-09 17:37:21] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-09 17:37:21] production.INFO: Old stock: 75.00  
[2026-07-09 17:37:21] production.INFO: Quantity deducted: 1  
[2026-07-09 17:37:21] production.INFO: New stock: 74  
[2026-07-09 17:37:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783611440197"} 
[2026-07-09 17:42:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783611761884","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":901,"product_id":901,"name":"Collogate Herbal","sku":"PRD-00901","price":"6000.00","selling_price":"6000.00","purchase_price":"3500.00","quantity":1,"subtotal":6000,"product":{"id":901,"name":"Collogate Herbal","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","last_purchase_price":"3500.00","selling_price":"6000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00901","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:30:45.000000Z","updated_at":"2026-06-05T09:34:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":857,"product_id":857,"name":"Colgate Tooth Brush","sku":"PRD-00857","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":857,"name":"Colgate Tooth Brush","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00857","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-20","created_at":"2026-04-20T13:18:54.000000Z","updated_at":"2026-06-18T14:32:27.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 17:42:43] production.INFO: Stock deduction for product: Collogate Herbal  
[2026-07-09 17:42:43] production.INFO: Old stock: 11.00  
[2026-07-09 17:42:43] production.INFO: Quantity deducted: 1  
[2026-07-09 17:42:43] production.INFO: New stock: 10  
[2026-07-09 17:42:43] production.INFO: Stock deduction for product: Colgate Tooth Brush  
[2026-07-09 17:42:43] production.INFO: Old stock: 3.00  
[2026-07-09 17:42:43] production.INFO: Quantity deducted: 1  
[2026-07-09 17:42:43] production.INFO: New stock: 2  
[2026-07-09 17:42:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783611761884"} 
[2026-07-09 17:50:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783612202530","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"49.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-09T09:37:38.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 17:50:04] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-09 17:50:04] production.INFO: Old stock: 49.00  
[2026-07-09 17:50:04] production.INFO: Quantity deducted: 1  
[2026-07-09 17:50:04] production.INFO: New stock: 48  
[2026-07-09 17:50:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783612202530"} 
[2026-07-09 17:55:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783612553737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":734,"product_id":734,"name":"Triphen Dry","sku":"3371","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":734,"name":"Triphen Dry","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"2.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3371","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-15T15:36:16.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"93.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-08T17:32:31.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 17:55:54] production.INFO: Stock deduction for product: Triphen Dry  
[2026-07-09 17:55:54] production.INFO: Old stock: 2.00  
[2026-07-09 17:55:54] production.INFO: Quantity deducted: 1  
[2026-07-09 17:55:54] production.INFO: New stock: 1  
[2026-07-09 17:55:54] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-09 17:55:54] production.INFO: Old stock: 93.00  
[2026-07-09 17:55:54] production.INFO: Quantity deducted: 1  
[2026-07-09 17:55:54] production.INFO: New stock: 92  
[2026-07-09 17:55:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783612553737"} 
[2026-07-09 18:12:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783613570117","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Ashwaganda","sku":"1259","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":82,"name":"Ashwaganda","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"4000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"14.00","stock":"20.00","product_type":"Single","tax":null,"sku":"1259","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-23","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-06T06:55:34.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 18:12:51] production.INFO: Stock deduction for product: Ashwaganda  
[2026-07-09 18:12:51] production.INFO: Old stock: 14.00  
[2026-07-09 18:12:51] production.INFO: Quantity deducted: 1  
[2026-07-09 18:12:51] production.INFO: New stock: 13  
[2026-07-09 18:12:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783613570117"} 
[2026-07-09 18:31:10] production.INFO: Finalize sale attempt {"cart_items":7,"request_data":{"invoice_no":"INV-1783614669609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"3.00","stock":"16.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-05T16:48:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"16.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T08:45:34.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"74.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T15:12:33.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":1,"subtotal":1000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"161.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T07:17:03.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"6.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-03T14:20:32.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":481,"product_id":481,"name":"ketoconazole(konazol)","sku":"3118","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":481,"name":"ketoconazole(konazol)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"15","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3118","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-04T06:27:37.000000Z","brand":null,"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"31.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-07-08T18:11:25.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 18:31:10] production.INFO: Stock deduction for product: HIV Test kit  
[2026-07-09 18:31:10] production.INFO: Old stock: 3.00  
[2026-07-09 18:31:10] production.INFO: Quantity deducted: 2  
[2026-07-09 18:31:10] production.INFO: New stock: 1  
[2026-07-09 18:31:10] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-09 18:31:10] production.INFO: Old stock: 16.00  
[2026-07-09 18:31:10] production.INFO: Quantity deducted: 1  
[2026-07-09 18:31:10] production.INFO: New stock: 15  
[2026-07-09 18:31:10] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-09 18:31:10] production.INFO: Old stock: 74.00  
[2026-07-09 18:31:10] production.INFO: Quantity deducted: 1  
[2026-07-09 18:31:10] production.INFO: New stock: 73  
[2026-07-09 18:31:10] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-09 18:31:10] production.INFO: Old stock: 161.00  
[2026-07-09 18:31:10] production.INFO: Quantity deducted: 1  
[2026-07-09 18:31:10] production.INFO: New stock: 160  
[2026-07-09 18:31:10] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-07-09 18:31:10] production.INFO: Old stock: 6.00  
[2026-07-09 18:31:10] production.INFO: Quantity deducted: 1  
[2026-07-09 18:31:10] production.INFO: New stock: 5  
[2026-07-09 18:31:11] production.INFO: Stock deduction for product: ketoconazole(konazol)  
[2026-07-09 18:31:11] production.INFO: Old stock: 13.00  
[2026-07-09 18:31:11] production.INFO: Quantity deducted: 1  
[2026-07-09 18:31:11] production.INFO: New stock: 12  
[2026-07-09 18:31:11] production.INFO: Stock deduction for product: Active C  
[2026-07-09 18:31:11] production.INFO: Old stock: 31.00  
[2026-07-09 18:31:11] production.INFO: Quantity deducted: 1  
[2026-07-09 18:31:11] production.INFO: New stock: 30  
[2026-07-09 18:31:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783614669609"} 
[2026-07-09 18:37:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783615065167","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":3,"subtotal":12000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"15.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T16:31:10.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":846,"product_id":846,"name":"Azithromycin Film coated","sku":"PRD-00846","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":846,"name":"Azithromycin Film coated","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00846","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T14:36:12.000000Z","updated_at":"2026-05-21T12:00:42.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 18:37:46] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-09 18:37:46] production.INFO: Old stock: 15.00  
[2026-07-09 18:37:46] production.INFO: Quantity deducted: 3  
[2026-07-09 18:37:46] production.INFO: New stock: 12  
[2026-07-09 18:37:46] production.INFO: Stock deduction for product: Azithromycin Film coated  
[2026-07-09 18:37:46] production.INFO: Old stock: 4.00  
[2026-07-09 18:37:46] production.INFO: Quantity deducted: 1  
[2026-07-09 18:37:46] production.INFO: New stock: 3  
[2026-07-09 18:37:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783615065167"} 
[2026-07-09 18:53:53] production.INFO: Stock Adjustment - Initial State {"product_id":"817","previous_quantity":"0.00","previous_selling_price":"8500.00","validated_data":{"product_id":"817","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 18:53:53] production.INFO: Stock Adjustment - After Quantity Save {"product_id":817,"new_quantity":30.0,"current_stock":30.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 19:10:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783617057464","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":4,"subtotal":34000,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"30.00","stock":"30.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-07-09T16:53:53.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 19:10:57] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-07-09 19:10:57] production.INFO: Old stock: 30.00  
[2026-07-09 19:10:57] production.INFO: Quantity deducted: 4  
[2026-07-09 19:10:57] production.INFO: New stock: 26  
[2026-07-09 19:10:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783617057464"} 
[2026-07-09 19:16:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783617361438","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3500.00","selling_price":"3500.00","purchase_price":"1560.00","quantity":2,"subtotal":7000,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"17.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T10:02:16.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 19:16:02] production.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-07-09 19:16:02] production.INFO: Old stock: 17.00  
[2026-07-09 19:16:02] production.INFO: Quantity deducted: 2  
[2026-07-09 19:16:02] production.INFO: New stock: 15  
[2026-07-09 19:16:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783617361438"} 
[2026-07-09 19:42:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783618969040","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":882,"product_id":882,"name":"Ambcet","sku":"PRD-00882","price":"8000.00","selling_price":"8000.00","purchase_price":"4000.00","quantity":1,"subtotal":8000,"product":{"id":882,"name":"Ambcet","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"8000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00882","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-20","created_at":"2026-05-20T05:16:10.000000Z","updated_at":"2026-07-02T11:44:06.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 19:42:50] production.INFO: Stock deduction for product: Ambcet  
[2026-07-09 19:42:50] production.INFO: Old stock: 5.00  
[2026-07-09 19:42:50] production.INFO: Quantity deducted: 1  
[2026-07-09 19:42:50] production.INFO: New stock: 4  
[2026-07-09 19:42:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783618969040"} 
[2026-07-09 19:47:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783619242191","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":210,"product_id":210,"name":"Dark Spot Remover Soap (Glam & Glory)","sku":"0767","price":"10000.00","selling_price":"10000.00","purchase_price":"6500.00","quantity":2,"subtotal":20000,"product":{"id":210,"name":"Dark Spot Remover Soap (Glam & Glory)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"28","brand_id":"9","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"2.00","stock":"2.00","product_type":"Single","tax":null,"sku":"0767","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-03-06T00:41:45.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":28,"name":"COSMETIC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 19:47:23] production.INFO: Stock deduction for product: Dark Spot Remover Soap (Glam & Glory)  
[2026-07-09 19:47:23] production.INFO: Old stock: 2.00  
[2026-07-09 19:47:23] production.INFO: Quantity deducted: 2  
[2026-07-09 19:47:23] production.INFO: New stock: 0  
[2026-07-09 19:47:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783619242191"} 
[2026-07-09 20:16:59] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783621018344","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11500.00","selling_price":"11500.00","purchase_price":"3500.00","quantity":1,"subtotal":11500,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-06T18:47:35.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"10.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-09T13:48:49.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":5,"subtotal":1500,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"249.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T14:54:15.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 20:16:59] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-07-09 20:16:59] production.INFO: Old stock: 12.00  
[2026-07-09 20:16:59] production.INFO: Quantity deducted: 1  
[2026-07-09 20:16:59] production.INFO: New stock: 11  
[2026-07-09 20:16:59] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-09 20:16:59] production.INFO: Old stock: 10.00  
[2026-07-09 20:16:59] production.INFO: Quantity deducted: 1  
[2026-07-09 20:16:59] production.INFO: New stock: 9  
[2026-07-09 20:16:59] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-09 20:16:59] production.INFO: Old stock: 249.00  
[2026-07-09 20:16:59] production.INFO: Quantity deducted: 5  
[2026-07-09 20:16:59] production.INFO: New stock: 244  
[2026-07-09 20:16:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783621018344"} 
[2026-07-09 20:25:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783621523494","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":280,"product_id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","sku":"0798","price":"2000.00","selling_price":"2000.00","purchase_price":"450.00","quantity":5,"subtotal":10000,"product":{"id":280,"name":"ENALAPRIL 10MG( DAWAPRIL)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"20.00","stock":"50.00","product_type":"Single","tax":null,"sku":"0798","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-08T11:37:04.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-09 20:25:25] production.INFO: Stock deduction for product: ENALAPRIL 10MG( DAWAPRIL)  
[2026-07-09 20:25:25] production.INFO: Old stock: 20.00  
[2026-07-09 20:25:25] production.INFO: Quantity deducted: 5  
[2026-07-09 20:25:25] production.INFO: New stock: 15  
[2026-07-09 20:25:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783621523494"} 
[2026-07-09 20:36:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783622204508","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":616,"product_id":616,"name":"ORS (CORS)","sku":"3253","price":"1000.00","selling_price":"1000.00","purchase_price":"3890.00","quantity":2,"subtotal":2000,"product":{"id":616,"name":"ORS (CORS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"3890.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"6.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3253","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-06T19:10:26.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-09 20:36:44] production.INFO: Stock deduction for product: ORS (CORS)  
[2026-07-09 20:36:44] production.INFO: Old stock: 6.00  
[2026-07-09 20:36:44] production.INFO: Quantity deducted: 2  
[2026-07-09 20:36:44] production.INFO: New stock: 4  
[2026-07-09 20:36:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783622204508"} 
[2026-07-09 21:40:42] production.INFO: Stock Adjustment - Initial State {"product_id":"778","previous_quantity":"19.00","previous_selling_price":"2500.00","validated_data":{"product_id":"778","adjustment_type":"add","quantity":"42","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:40:42] production.INFO: Stock Adjustment - After Quantity Save {"product_id":778,"new_quantity":61.0,"current_stock":61.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:41:16] production.INFO: Stock Adjustment - Initial State {"product_id":"758","previous_quantity":"1.00","previous_selling_price":"9000.00","validated_data":{"product_id":"758","adjustment_type":"add","quantity":"4","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:41:16] production.INFO: Stock Adjustment - After Quantity Save {"product_id":758,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:42:30] production.INFO: Stock Adjustment - Initial State {"product_id":"286","previous_quantity":"6.00","previous_selling_price":"6500.00","validated_data":{"product_id":"286","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:42:30] production.INFO: Stock Adjustment - After Quantity Save {"product_id":286,"new_quantity":16.0,"current_stock":16.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:43:37] production.INFO: Stock Adjustment - Initial State {"product_id":"654","previous_quantity":"5.00","previous_selling_price":"5500.00","validated_data":{"product_id":"654","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:43:37] production.INFO: Stock Adjustment - After Quantity Save {"product_id":654,"new_quantity":25.0,"current_stock":25.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:44:06] production.INFO: Stock Adjustment - Initial State {"product_id":"448","previous_quantity":"1.00","previous_selling_price":"11000.00","validated_data":{"product_id":"448","adjustment_type":"add","quantity":"25","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:44:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":448,"new_quantity":26.0,"current_stock":26.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:45:10] production.INFO: Stock Adjustment - Initial State {"product_id":"479","previous_quantity":"2.00","previous_selling_price":"3500.00","validated_data":{"product_id":"479","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:45:10] production.INFO: Stock Adjustment - After Quantity Save {"product_id":479,"new_quantity":12.0,"current_stock":12.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:45:49] production.INFO: Stock Adjustment - Initial State {"product_id":"42","previous_quantity":"0.00","previous_selling_price":"6000.00","validated_data":{"product_id":"42","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:45:49] production.INFO: Stock Adjustment - After Quantity Save {"product_id":42,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:47:09] production.INFO: Stock Adjustment - Initial State {"product_id":"476","previous_quantity":"5.00","previous_selling_price":"3000.00","validated_data":{"product_id":"476","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:47:09] production.INFO: Stock Adjustment - After Quantity Save {"product_id":476,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-07-09 21:49:17] production.INFO: Stock Adjustment - Initial State {"product_id":"551","previous_quantity":"2.00","previous_selling_price":"28000.00","validated_data":{"product_id":"551","adjustment_type":"add","quantity":"4","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-09"}} 
[2026-07-09 21:49:17] production.INFO: Stock Adjustment - After Quantity Save {"product_id":551,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-10 08:21:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783664469043","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":154,"product_id":154,"name":"CARBAMAZEPINE 200MG","sku":"0720","price":"3000.00","selling_price":"3000.00","purchase_price":"1800.00","quantity":1,"subtotal":3000,"product":{"id":154,"name":"CARBAMAZEPINE 200MG","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0720","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-17T10:27:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 08:21:09] production.INFO: Stock deduction for product: CARBAMAZEPINE 200MG  
[2026-07-10 08:21:09] production.INFO: Old stock: 8.00  
[2026-07-10 08:21:09] production.INFO: Quantity deducted: 1  
[2026-07-10 08:21:09] production.INFO: New stock: 7  
[2026-07-10 08:21:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783664469043"} 
[2026-07-10 08:56:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783666593186","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":608,"product_id":608,"name":"Ondansetrun (Emitino)","sku":"3245","price":"5000.00","selling_price":"5000.00","purchase_price":"2300.00","quantity":1,"subtotal":5000,"product":{"id":608,"name":"Ondansetrun (Emitino)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"2300.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"12.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3245","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-28","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-13T09:44:35.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 08:56:34] production.INFO: Stock deduction for product: Ondansetrun (Emitino)  
[2026-07-10 08:56:34] production.INFO: Old stock: 12.00  
[2026-07-10 08:56:34] production.INFO: Quantity deducted: 1  
[2026-07-10 08:56:34] production.INFO: New stock: 11  
[2026-07-10 08:56:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783666593186"} 
[2026-07-10 09:39:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783669195720","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":980,"product_id":980,"name":"Vitogem Syrup (Multi Vitamin with Zinc Syrup)","sku":"PRD-00980","price":"6500.00","selling_price":"6500.00","purchase_price":"3135.00","quantity":1,"subtotal":6500,"product":{"id":980,"name":"Vitogem Syrup (Multi Vitamin with Zinc Syrup)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3135.00","last_purchase_price":"3135.00","selling_price":"6500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00980","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T15:19:59.000000Z","updated_at":"2026-07-03T15:19:59.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 09:39:56] production.INFO: Stock deduction for product: Vitogem Syrup (Multi Vitamin with Zinc Syrup)  
[2026-07-10 09:39:56] production.INFO: Old stock: 5.00  
[2026-07-10 09:39:56] production.INFO: Quantity deducted: 1  
[2026-07-10 09:39:56] production.INFO: New stock: 4  
[2026-07-10 09:39:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783669195720"} 
[2026-07-10 10:15:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783671329895","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"94.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-08T11:37:56.000000Z","brand":null,"category":null}}],"payment_method":"airtel_money"}} 
[2026-07-10 10:15:29] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-10 10:15:29] production.INFO: Old stock: 94.00  
[2026-07-10 10:15:29] production.INFO: Quantity deducted: 1  
[2026-07-10 10:15:29] production.INFO: New stock: 93  
[2026-07-10 10:15:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783671329895"} 
[2026-07-10 10:38:24] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783672703985","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":860,"product_id":860,"name":"Dufenac","sku":"PRD-00860","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":2,"subtotal":30000,"product":{"id":860,"name":"Dufenac","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"7500.00","last_purchase_price":"7500.00","selling_price":"15000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"PRD-00860","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":"2026-04-21","created_at":"2026-04-21T09:46:44.000000Z","updated_at":"2026-05-06T13:15:49.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":654,"product_id":654,"name":"PregStream","sku":"3291","price":"5500.00","selling_price":"5500.00","purchase_price":"2700.00","quantity":1,"subtotal":5500,"product":{"id":654,"name":"PregStream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"25.00","stock":"25.00","product_type":"Single","tax":null,"sku":"3291","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T19:43:37.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":127,"product_id":127,"name":"BIO OIL DRY SKIN GEL 200 ML","sku":"1024","price":"20000.00","selling_price":"20000.00","purchase_price":"12700.00","quantity":1,"subtotal":20000,"product":{"id":127,"name":"BIO OIL DRY SKIN GEL 200 ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"12700.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1024","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-03-06T00:13:11.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 10:38:24] production.INFO: Stock deduction for product: Dufenac  
[2026-07-10 10:38:24] production.INFO: Old stock: 6.00  
[2026-07-10 10:38:24] production.INFO: Quantity deducted: 2  
[2026-07-10 10:38:24] production.INFO: New stock: 4  
[2026-07-10 10:38:24] production.INFO: Stock deduction for product: PregStream  
[2026-07-10 10:38:24] production.INFO: Old stock: 25.00  
[2026-07-10 10:38:24] production.INFO: Quantity deducted: 1  
[2026-07-10 10:38:24] production.INFO: New stock: 24  
[2026-07-10 10:38:24] production.INFO: Stock deduction for product: BIO OIL DRY SKIN GEL 200 ML  
[2026-07-10 10:38:24] production.INFO: Old stock: 3.00  
[2026-07-10 10:38:24] production.INFO: Quantity deducted: 1  
[2026-07-10 10:38:24] production.INFO: New stock: 2  
[2026-07-10 10:38:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783672703985"} 
[2026-07-10 10:51:07] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783673466750","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"55.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-08T11:48:00.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":1,"subtotal":1500,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"73.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-08T18:46:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":3,"subtotal":6000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"41.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-09T11:47:01.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 10:51:07] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-10 10:51:07] production.INFO: Old stock: 55.00  
[2026-07-10 10:51:07] production.INFO: Quantity deducted: 1  
[2026-07-10 10:51:07] production.INFO: New stock: 54  
[2026-07-10 10:51:07] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-07-10 10:51:07] production.INFO: Old stock: 73.00  
[2026-07-10 10:51:07] production.INFO: Quantity deducted: 1  
[2026-07-10 10:51:07] production.INFO: New stock: 72  
[2026-07-10 10:51:07] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-10 10:51:07] production.INFO: Old stock: 41.00  
[2026-07-10 10:51:07] production.INFO: Quantity deducted: 3  
[2026-07-10 10:51:07] production.INFO: New stock: 38  
[2026-07-10 10:51:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783673466750"} 
[2026-07-10 10:52:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783673571453","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":557,"product_id":557,"name":"METHYLATED SPIRIT 50ML","sku":"3194","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":557,"name":"METHYLATED SPIRIT 50ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"15.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3194","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-27T12:08:34.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 10:52:52] production.INFO: Stock deduction for product: METHYLATED SPIRIT 50ML  
[2026-07-10 10:52:52] production.INFO: Old stock: 15.00  
[2026-07-10 10:52:52] production.INFO: Quantity deducted: 1  
[2026-07-10 10:52:52] production.INFO: New stock: 14  
[2026-07-10 10:52:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783673571453"} 
[2026-07-10 11:16:25] production.INFO: Stock Adjustment - Initial State {"product_id":"217","previous_quantity":"14.00","previous_selling_price":"1000.00","validated_data":{"product_id":"217","adjustment_type":"add","quantity":"33","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-10"}} 
[2026-07-10 11:16:25] production.INFO: Stock Adjustment - After Quantity Save {"product_id":217,"new_quantity":47.0,"current_stock":47.0,"changes_made":"Quantity adjusted"} 
[2026-07-10 11:17:46] production.INFO: Stock Adjustment - Initial State {"product_id":"755","previous_quantity":"9.00","previous_selling_price":"1000.00","validated_data":{"product_id":"755","adjustment_type":"add","quantity":"33","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-10"}} 
[2026-07-10 11:17:46] production.INFO: Stock Adjustment - After Quantity Save {"product_id":755,"new_quantity":42.0,"current_stock":42.0,"changes_made":"Quantity adjusted"} 
[2026-07-10 11:41:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783676511922","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"92.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-09T15:55:54.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-07-02T19:32:10.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 11:41:52] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-10 11:41:52] production.INFO: Old stock: 92.00  
[2026-07-10 11:41:52] production.INFO: Quantity deducted: 1  
[2026-07-10 11:41:52] production.INFO: New stock: 91  
[2026-07-10 11:41:52] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-07-10 11:41:52] production.INFO: Old stock: 7.00  
[2026-07-10 11:41:52] production.INFO: Quantity deducted: 1  
[2026-07-10 11:41:52] production.INFO: New stock: 6  
[2026-07-10 11:41:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783676511922"} 
[2026-07-10 11:53:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783677223792","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":3,"subtotal":3000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"164.00","stock":"178.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T07:47:51.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 11:53:43] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-07-10 11:53:43] production.INFO: Old stock: 164.00  
[2026-07-10 11:53:43] production.INFO: Quantity deducted: 3  
[2026-07-10 11:53:43] production.INFO: New stock: 161  
[2026-07-10 11:53:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783677223792"} 
[2026-07-10 11:56:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783677411518","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"38.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-10T08:51:07.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 11:56:51] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-10 11:56:51] production.INFO: Old stock: 38.00  
[2026-07-10 11:56:51] production.INFO: Quantity deducted: 1  
[2026-07-10 11:56:51] production.INFO: New stock: 37  
[2026-07-10 11:56:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783677411518"} 
[2026-07-10 12:09:07] production.INFO: Finalize sale attempt {"cart_items":7,"request_data":{"invoice_no":"INV-1783678147156","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"12.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T16:37:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":4,"subtotal":4000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"11.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T10:15:44.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":4,"subtotal":4000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"48.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-09T15:50:04.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":3,"subtotal":6000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"9.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-09T18:16:59.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":4,"subtotal":4000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"93.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T08:15:29.000000Z","brand":null,"category":null}},{"id":763,"product_id":763,"name":"Water Plaster","sku":"3400","price":"200.00","selling_price":"200.00","purchase_price":"36.00","quantity":20,"subtotal":4000,"product":{"id":763,"name":"Water Plaster","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"36.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"410.00","stock":"419.00","product_type":"Single","tax":null,"sku":"3400","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-20T15:57:58.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":807,"product_id":807,"name":"Crepe Bandage 10cm","sku":"1174","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":3,"subtotal":9000,"product":{"id":807,"name":"Crepe Bandage 10cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1174","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-07","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-07T16:18:20.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"standard_bank"}} 
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-10 12:09:07] production.INFO: Old stock: 12.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 1  
[2026-07-10 12:09:07] production.INFO: New stock: 11  
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-10 12:09:07] production.INFO: Old stock: 11.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 4  
[2026-07-10 12:09:07] production.INFO: New stock: 7  
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-10 12:09:07] production.INFO: Old stock: 48.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 4  
[2026-07-10 12:09:07] production.INFO: New stock: 44  
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-10 12:09:07] production.INFO: Old stock: 9.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 3  
[2026-07-10 12:09:07] production.INFO: New stock: 6  
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-10 12:09:07] production.INFO: Old stock: 93.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 4  
[2026-07-10 12:09:07] production.INFO: New stock: 89  
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: Water Plaster  
[2026-07-10 12:09:07] production.INFO: Old stock: 410.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 20  
[2026-07-10 12:09:07] production.INFO: New stock: 390  
[2026-07-10 12:09:07] production.INFO: Stock deduction for product: Crepe Bandage 10cm  
[2026-07-10 12:09:07] production.INFO: Old stock: 10.00  
[2026-07-10 12:09:07] production.INFO: Quantity deducted: 3  
[2026-07-10 12:09:07] production.INFO: New stock: 7  
[2026-07-10 12:09:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783678147156"} 
[2026-07-10 12:09:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783678166395","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"26.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-07T09:12:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 12:09:25] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-10 12:09:25] production.INFO: Old stock: 26.00  
[2026-07-10 12:09:25] production.INFO: Quantity deducted: 1  
[2026-07-10 12:09:25] production.INFO: New stock: 25  
[2026-07-10 12:09:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783678166395"} 
[2026-07-10 12:57:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783681069784","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":787,"product_id":787,"name":"COLDFLU CAPSULES","sku":"0746","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":787,"name":"COLDFLU CAPSULES","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0746","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-08T18:11:25.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 12:57:50] production.INFO: Stock deduction for product: COLDFLU CAPSULES  
[2026-07-10 12:57:50] production.INFO: Old stock: 9.00  
[2026-07-10 12:57:50] production.INFO: Quantity deducted: 1  
[2026-07-10 12:57:50] production.INFO: New stock: 8  
[2026-07-10 12:57:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783681069784"} 
[2026-07-10 13:52:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783684375298","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"16.00","stock":"16.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-29T16:46:22.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 13:52:55] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-07-10 13:52:55] production.INFO: Old stock: 16.00  
[2026-07-10 13:52:55] production.INFO: Quantity deducted: 1  
[2026-07-10 13:52:55] production.INFO: New stock: 15  
[2026-07-10 13:52:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783684375298"} 
[2026-07-10 14:26:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783686375058","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"16.00","stock":"18.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T09:05:37.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 14:26:14] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-07-10 14:26:14] production.INFO: Old stock: 16.00  
[2026-07-10 14:26:14] production.INFO: Quantity deducted: 1  
[2026-07-10 14:26:14] production.INFO: New stock: 15  
[2026-07-10 14:26:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783686375058"} 
[2026-07-10 14:32:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783686764641","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":119,"product_id":119,"name":"BETASOL CREAM, 15g","sku":"0706","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":119,"name":"BETASOL CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"26","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"12.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0706","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-04-18T08:17:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 14:32:44] production.INFO: Stock deduction for product: BETASOL CREAM, 15g  
[2026-07-10 14:32:44] production.INFO: Old stock: 12.00  
[2026-07-10 14:32:44] production.INFO: Quantity deducted: 1  
[2026-07-10 14:32:44] production.INFO: New stock: 11  
[2026-07-10 14:32:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783686764641"} 
[2026-07-10 15:00:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783688420802","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"25.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-10T10:09:25.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 15:00:21] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-10 15:00:21] production.INFO: Old stock: 25.00  
[2026-07-10 15:00:21] production.INFO: Quantity deducted: 1  
[2026-07-10 15:00:21] production.INFO: New stock: 24  
[2026-07-10 15:00:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783688420802"} 
[2026-07-10 15:05:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783688743560","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"4.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-07T14:54:45.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 15:05:44] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-07-10 15:05:44] production.INFO: Old stock: 4.00  
[2026-07-10 15:05:44] production.INFO: Quantity deducted: 1  
[2026-07-10 15:05:44] production.INFO: New stock: 3  
[2026-07-10 15:05:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783688743560"} 
[2026-07-10 15:21:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783689678725","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-07-07T06:25:09.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 15:21:19] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-07-10 15:21:19] production.INFO: Old stock: 2.00  
[2026-07-10 15:21:19] production.INFO: Quantity deducted: 1  
[2026-07-10 15:21:19] production.INFO: New stock: 1  
[2026-07-10 15:21:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783689678725"} 
[2026-07-10 15:25:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783689942292","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"147.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-08T13:36:56.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 15:25:42] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-10 15:25:42] production.INFO: Old stock: 147.00  
[2026-07-10 15:25:42] production.INFO: Quantity deducted: 1  
[2026-07-10 15:25:42] production.INFO: New stock: 146  
[2026-07-10 15:25:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783689942292"} 
[2026-07-10 15:58:55] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783691934884","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":4,"subtotal":10000,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"52.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-05T13:31:11.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":5,"subtotal":5000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"102.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-09T12:57:08.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 15:58:55] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-07-10 15:58:55] production.INFO: Old stock: 52.00  
[2026-07-10 15:58:55] production.INFO: Quantity deducted: 4  
[2026-07-10 15:58:55] production.INFO: New stock: 48  
[2026-07-10 15:58:55] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-10 15:58:55] production.INFO: Old stock: 102.00  
[2026-07-10 15:58:55] production.INFO: Quantity deducted: 5  
[2026-07-10 15:58:55] production.INFO: New stock: 97  
[2026-07-10 15:58:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783691934884"} 
[2026-07-10 16:13:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783692792777","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":521,"product_id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","sku":"3158","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"19.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3158","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-02T17:00:56.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 16:13:12] production.INFO: Stock deduction for product: LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)  
[2026-07-10 16:13:12] production.INFO: Old stock: 19.00  
[2026-07-10 16:13:12] production.INFO: Quantity deducted: 1  
[2026-07-10 16:13:12] production.INFO: New stock: 18  
[2026-07-10 16:13:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783692792777"} 
[2026-07-10 16:17:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783693024592","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-10T09:56:51.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 16:17:04] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-10 16:17:04] production.INFO: Old stock: 37.00  
[2026-07-10 16:17:04] production.INFO: Quantity deducted: 1  
[2026-07-10 16:17:04] production.INFO: New stock: 36  
[2026-07-10 16:17:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783693024592"} 
[2026-07-10 16:39:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783694387282","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"156.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T06:41:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 16:39:47] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-10 16:39:47] production.INFO: Old stock: 156.00  
[2026-07-10 16:39:47] production.INFO: Quantity deducted: 1  
[2026-07-10 16:39:47] production.INFO: New stock: 155  
[2026-07-10 16:39:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783694387282"} 
[2026-07-10 16:42:35] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783694554665","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":272,"product_id":272,"name":"EASCOF EXPECTORANT, 100ml","sku":"0793","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":272,"name":"EASCOF EXPECTORANT, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"20","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0793","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-24T14:59:21.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":517,"product_id":517,"name":"LOFNAC H SPRAY 100ml","sku":"3154","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":1,"subtotal":20000,"product":{"id":517,"name":"LOFNAC H SPRAY 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3154","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T09:03:19.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":2,"subtotal":1000,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"24.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-10T13:00:21.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 16:42:35] production.INFO: Stock deduction for product: EASCOF EXPECTORANT, 100ml  
[2026-07-10 16:42:35] production.INFO: Old stock: 10.00  
[2026-07-10 16:42:35] production.INFO: Quantity deducted: 1  
[2026-07-10 16:42:35] production.INFO: New stock: 9  
[2026-07-10 16:42:35] production.INFO: Stock deduction for product: LOFNAC H SPRAY 100ml  
[2026-07-10 16:42:35] production.INFO: Old stock: 5.00  
[2026-07-10 16:42:35] production.INFO: Quantity deducted: 1  
[2026-07-10 16:42:35] production.INFO: New stock: 4  
[2026-07-10 16:42:35] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-10 16:42:35] production.INFO: Old stock: 24.00  
[2026-07-10 16:42:35] production.INFO: Quantity deducted: 2  
[2026-07-10 16:42:35] production.INFO: New stock: 22  
[2026-07-10 16:42:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783694554665"} 
[2026-07-10 16:51:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783695078820","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":2,"subtotal":20000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"5.00","stock":"15.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-07T15:49:52.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 16:51:21] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-07-10 16:51:21] production.INFO: Old stock: 5.00  
[2026-07-10 16:51:21] production.INFO: Quantity deducted: 2  
[2026-07-10 16:51:21] production.INFO: New stock: 3  
[2026-07-10 16:51:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783695078820"} 
[2026-07-10 17:18:43] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783696720469","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":873,"product_id":873,"name":"Aciclovir 200mg (Davir)","sku":"PRD-00873","price":"3500.00","selling_price":"3500.00","purchase_price":"1500.00","quantity":2,"subtotal":7000,"product":{"id":873,"name":"Aciclovir 200mg (Davir)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00873","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-07-09","last_purchase_date":"2026-05-09","created_at":"2026-05-09T14:04:26.000000Z","updated_at":"2026-05-09T14:04:26.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":37,"product_id":37,"name":"ACYCLOVIR (DAVIR) CREAM","sku":"0664","price":"3000.00","selling_price":"3000.00","purchase_price":"1250.00","quantity":1,"subtotal":3000,"product":{"id":37,"name":"ACYCLOVIR (DAVIR) CREAM","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"20.00","stock":"23.00","product_type":"Single","tax":null,"sku":"0664","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-06-30T13:48:05.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"7.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T10:09:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 17:18:43] production.INFO: Stock deduction for product: Aciclovir 200mg (Davir)  
[2026-07-10 17:18:43] production.INFO: Old stock: 6.00  
[2026-07-10 17:18:43] production.INFO: Quantity deducted: 2  
[2026-07-10 17:18:43] production.INFO: New stock: 4  
[2026-07-10 17:18:43] production.INFO: Stock deduction for product: ACYCLOVIR (DAVIR) CREAM  
[2026-07-10 17:18:43] production.INFO: Old stock: 20.00  
[2026-07-10 17:18:43] production.INFO: Quantity deducted: 1  
[2026-07-10 17:18:43] production.INFO: New stock: 19  
[2026-07-10 17:18:43] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-10 17:18:43] production.INFO: Old stock: 7.00  
[2026-07-10 17:18:43] production.INFO: Quantity deducted: 1  
[2026-07-10 17:18:43] production.INFO: New stock: 6  
[2026-07-10 17:18:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783696720469"} 
[2026-07-10 17:19:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783696745091","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-07T14:09:50.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 17:19:07] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-10 17:19:07] production.INFO: Old stock: 17.00  
[2026-07-10 17:19:07] production.INFO: Quantity deducted: 1  
[2026-07-10 17:19:07] production.INFO: New stock: 16  
[2026-07-10 17:19:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783696745091"} 
[2026-07-10 17:19:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783696779275","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":592,"product_id":592,"name":"NORMET (Metronidazole & Norfloxacin Tablets)","sku":"3229","price":"8000.00","selling_price":"8000.00","purchase_price":"3000.00","quantity":1,"subtotal":8000,"product":{"id":592,"name":"NORMET (Metronidazole & Norfloxacin Tablets)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"6.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3229","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-02T08:30:23.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 17:19:40] production.INFO: Stock deduction for product: NORMET (Metronidazole & Norfloxacin Tablets)  
[2026-07-10 17:19:40] production.INFO: Old stock: 6.00  
[2026-07-10 17:19:40] production.INFO: Quantity deducted: 1  
[2026-07-10 17:19:40] production.INFO: New stock: 5  
[2026-07-10 17:19:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783696779275"} 
[2026-07-10 17:20:30] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783696828992","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":809,"product_id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","sku":"PRD-00809","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":809,"name":"AMOXICILLIN 25OMG PACK OF 40 TABLES","business_location":"EDUC Pharmacy (BL0001)","unit_id":"74","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"1.00","stock":"12.00","product_type":"Single","tax":null,"sku":"PRD-00809","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-18","last_purchase_date":"2026-03-13","created_at":"2026-03-13T10:08:52.000000Z","updated_at":"2026-06-20T06:28:52.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":958,"product_id":958,"name":"Ibuplus Tab","sku":"PRD-00958","price":"5500.00","selling_price":"5500.00","purchase_price":"2500.00","quantity":1,"subtotal":5500,"product":{"id":958,"name":"Ibuplus Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5500.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00958","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T21:05:34.000000Z","updated_at":"2026-07-02T21:05:34.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 17:20:30] production.INFO: Stock deduction for product: AMOXICILLIN 25OMG PACK OF 40 TABLES  
[2026-07-10 17:20:30] production.INFO: Old stock: 1.00  
[2026-07-10 17:20:30] production.INFO: Quantity deducted: 1  
[2026-07-10 17:20:30] production.INFO: New stock: 0  
[2026-07-10 17:20:30] production.INFO: Stock deduction for product: Ibuplus Tab  
[2026-07-10 17:20:30] production.INFO: Old stock: 50.00  
[2026-07-10 17:20:30] production.INFO: Quantity deducted: 1  
[2026-07-10 17:20:30] production.INFO: New stock: 49  
[2026-07-10 17:20:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783696828992"} 
[2026-07-10 17:21:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783696859625","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":397,"product_id":397,"name":"G&G Hair Removal Cream","sku":"3034","price":"11500.00","selling_price":"11500.00","purchase_price":"5333.00","quantity":1,"subtotal":11500,"product":{"id":397,"name":"G&G Hair Removal Cream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"5333.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3034","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-03-06T01:06:09.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 17:21:00] production.INFO: Stock deduction for product: G&G Hair Removal Cream  
[2026-07-10 17:21:00] production.INFO: Old stock: 12.00  
[2026-07-10 17:21:00] production.INFO: Quantity deducted: 1  
[2026-07-10 17:21:00] production.INFO: New stock: 11  
[2026-07-10 17:21:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783696859625"} 
[2026-07-10 18:23:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783700614829","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":277,"product_id":277,"name":"ELOGYL Susp (Metronidazole)","sku":"1234","price":"4500.00","selling_price":"4500.00","purchase_price":"2000.00","quantity":1,"subtotal":4500,"product":{"id":277,"name":"ELOGYL Susp (Metronidazole)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1234","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-02T11:45:03.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":616,"product_id":616,"name":"ORS (CORS)","sku":"3253","price":"1000.00","selling_price":"1000.00","purchase_price":"3890.00","quantity":1,"subtotal":1000,"product":{"id":616,"name":"ORS (CORS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"3890.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3253","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T18:36:44.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 18:23:37] production.INFO: Stock deduction for product: ELOGYL Susp (Metronidazole)  
[2026-07-10 18:23:37] production.INFO: Old stock: 6.00  
[2026-07-10 18:23:37] production.INFO: Quantity deducted: 1  
[2026-07-10 18:23:37] production.INFO: New stock: 5  
[2026-07-10 18:23:37] production.INFO: Stock deduction for product: ORS (CORS)  
[2026-07-10 18:23:37] production.INFO: Old stock: 4.00  
[2026-07-10 18:23:37] production.INFO: Quantity deducted: 1  
[2026-07-10 18:23:37] production.INFO: New stock: 3  
[2026-07-10 18:23:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783700614829"} 
[2026-07-10 18:24:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783700679325","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"8.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-03T14:32:31.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 18:24:41] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-07-10 18:24:41] production.INFO: Old stock: 8.00  
[2026-07-10 18:24:41] production.INFO: Quantity deducted: 1  
[2026-07-10 18:24:41] production.INFO: New stock: 7  
[2026-07-10 18:24:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783700679325"} 
[2026-07-10 18:27:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783700867753","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"22.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T10:18:40.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 18:27:49] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-07-10 18:27:49] production.INFO: Old stock: 22.00  
[2026-07-10 18:27:49] production.INFO: Quantity deducted: 1  
[2026-07-10 18:27:49] production.INFO: New stock: 21  
[2026-07-10 18:27:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783700867753"} 
[2026-07-10 18:31:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783701096158","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"109.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T14:12:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 18:31:39] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-10 18:31:39] production.INFO: Old stock: 109.00  
[2026-07-10 18:31:39] production.INFO: Quantity deducted: 1  
[2026-07-10 18:31:39] production.INFO: New stock: 108  
[2026-07-10 18:31:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783701096158"} 
[2026-07-10 19:34:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783704858767","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":928,"product_id":928,"name":"Go Cough Herbal Syrup","sku":"PRD-00928","price":"7000.00","selling_price":"7000.00","purchase_price":"3450.00","quantity":1,"subtotal":7000,"product":{"id":928,"name":"Go Cough Herbal Syrup","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3450.00","last_purchase_price":"3450.00","selling_price":"7000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00928","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T19:39:41.000000Z","updated_at":"2026-07-02T19:39:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 19:34:19] production.INFO: Stock deduction for product: Go Cough Herbal Syrup  
[2026-07-10 19:34:19] production.INFO: Old stock: 5.00  
[2026-07-10 19:34:19] production.INFO: Quantity deducted: 1  
[2026-07-10 19:34:19] production.INFO: New stock: 4  
[2026-07-10 19:34:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783704858767"} 
[2026-07-10 19:34:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783704884449","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"73.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-09T16:31:10.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 19:34:45] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-10 19:34:45] production.INFO: Old stock: 73.00  
[2026-07-10 19:34:45] production.INFO: Quantity deducted: 1  
[2026-07-10 19:34:45] production.INFO: New stock: 72  
[2026-07-10 19:34:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783704884449"} 
[2026-07-10 20:05:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783706722146","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":100,"product_id":100,"name":"BECLOMIN CREAM, 30g","sku":"0696","price":"5500.00","selling_price":"5500.00","purchase_price":"2450.00","quantity":1,"subtotal":5500,"product":{"id":100,"name":"BECLOMIN CREAM, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0696","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T16:09:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 20:05:25] production.INFO: Stock deduction for product: BECLOMIN CREAM, 30g  
[2026-07-10 20:05:25] production.INFO: Old stock: 7.00  
[2026-07-10 20:05:25] production.INFO: Quantity deducted: 1  
[2026-07-10 20:05:25] production.INFO: New stock: 6  
[2026-07-10 20:05:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783706722146"} 
[2026-07-10 20:20:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783707624343","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"244.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T18:16:59.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-10 20:20:23] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-10 20:20:23] production.INFO: Old stock: 244.00  
[2026-07-10 20:20:23] production.INFO: Quantity deducted: 6  
[2026-07-10 20:20:23] production.INFO: New stock: 238  
[2026-07-10 20:20:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783707624343"} 
[2026-07-10 20:23:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783707790534","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":987,"product_id":987,"name":"Flucanazole Capsules (Flutrox -200)","sku":"PRD-00987","price":"8500.00","selling_price":"8500.00","purchase_price":"4250.00","quantity":1,"subtotal":8500,"product":{"id":987,"name":"Flucanazole Capsules (Flutrox -200)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4250.00","last_purchase_price":"4250.00","selling_price":"8500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00987","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-04","created_at":"2026-07-04T15:26:48.000000Z","updated_at":"2026-07-04T15:26:48.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 20:23:10] production.INFO: Stock deduction for product: Flucanazole Capsules (Flutrox -200)  
[2026-07-10 20:23:10] production.INFO: Old stock: 2.00  
[2026-07-10 20:23:10] production.INFO: Quantity deducted: 1  
[2026-07-10 20:23:10] production.INFO: New stock: 1  
[2026-07-10 20:23:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783707790534"} 
[2026-07-10 20:28:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783708083781","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":4,"subtotal":2000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"172.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T15:03:09.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-10 20:28:03] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-10 20:28:03] production.INFO: Old stock: 172.00  
[2026-07-10 20:28:03] production.INFO: Quantity deducted: 4  
[2026-07-10 20:28:03] production.INFO: New stock: 168  
[2026-07-10 20:28:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783708083781"} 
[2026-07-10 20:46:52] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783709211458","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":402,"product_id":402,"name":"Gauze Swabs(10cm)","sku":"3039","price":"18000.00","selling_price":"18000.00","purchase_price":"10000.00","quantity":1,"subtotal":18000,"product":{"id":402,"name":"Gauze Swabs(10cm)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"10000.00","last_purchase_price":null,"selling_price":"18000.00","current_stock":"4.00","stock":"6.00","product_type":"Single","tax":null,"sku":"3039","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T13:11:30.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":645,"product_id":645,"name":"POVIDONE IODINE TOPICAP 10%","sku":"3282","price":"7500.00","selling_price":"7500.00","purchase_price":"4200.00","quantity":1,"subtotal":7500,"product":{"id":645,"name":"POVIDONE IODINE TOPICAP 10%","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3282","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-26T15:03:21.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 20:46:52] production.INFO: Stock deduction for product: Gauze Swabs(10cm)  
[2026-07-10 20:46:52] production.INFO: Old stock: 4.00  
[2026-07-10 20:46:52] production.INFO: Quantity deducted: 1  
[2026-07-10 20:46:52] production.INFO: New stock: 3  
[2026-07-10 20:46:52] production.INFO: Stock deduction for product: POVIDONE IODINE TOPICAP 10%  
[2026-07-10 20:46:52] production.INFO: Old stock: 3.00  
[2026-07-10 20:46:52] production.INFO: Quantity deducted: 1  
[2026-07-10 20:46:52] production.INFO: New stock: 2  
[2026-07-10 20:46:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783709211458"} 
[2026-07-10 21:09:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783710571782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":943,"product_id":943,"name":"Fluzomex Inhaler","sku":"PRD-00943","price":"35000.00","selling_price":"35000.00","purchase_price":"17500.00","quantity":1,"subtotal":35000,"product":{"id":943,"name":"Fluzomex Inhaler","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"17500.00","last_purchase_price":"17500.00","selling_price":"35000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00943","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:32:02.000000Z","updated_at":"2026-07-02T20:32:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-10 21:09:31] production.INFO: Stock deduction for product: Fluzomex Inhaler  
[2026-07-10 21:09:31] production.INFO: Old stock: 2.00  
[2026-07-10 21:09:31] production.INFO: Quantity deducted: 1  
[2026-07-10 21:09:31] production.INFO: New stock: 1  
[2026-07-10 21:09:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783710571782"} 
[2026-07-11 10:01:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783756889040","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"13.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-07T16:08:28.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:01:28] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-07-11 10:01:28] production.INFO: Old stock: 13.00  
[2026-07-11 10:01:28] production.INFO: Quantity deducted: 1  
[2026-07-11 10:01:28] production.INFO: New stock: 12  
[2026-07-11 10:01:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783756889040"} 
[2026-07-11 10:01:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783756913704","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":1,"subtotal":400,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"160.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-07T16:08:28.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:01:52] production.INFO: Stock deduction for product: HEDAX  
[2026-07-11 10:01:52] production.INFO: Old stock: 160.00  
[2026-07-11 10:01:52] production.INFO: Quantity deducted: 1  
[2026-07-11 10:01:52] production.INFO: New stock: 159  
[2026-07-11 10:01:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783756913704"} 
[2026-07-11 10:02:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783756973183","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"21.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-30T08:07:36.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-11 10:02:52] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-07-11 10:02:52] production.INFO: Old stock: 21.00  
[2026-07-11 10:02:52] production.INFO: Quantity deducted: 1  
[2026-07-11 10:02:52] production.INFO: New stock: 20  
[2026-07-11 10:02:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783756973183"} 
[2026-07-11 10:03:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757011183","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":4,"subtotal":2000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"261.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-09T12:57:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:03:30] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-11 10:03:30] production.INFO: Old stock: 261.00  
[2026-07-11 10:03:30] production.INFO: Quantity deducted: 4  
[2026-07-11 10:03:30] production.INFO: New stock: 257  
[2026-07-11 10:03:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757011183"} 
[2026-07-11 10:04:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757073079","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"11.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-10T10:09:07.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 10:04:32] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-11 10:04:32] production.INFO: Old stock: 11.00  
[2026-07-11 10:04:32] production.INFO: Quantity deducted: 1  
[2026-07-11 10:04:32] production.INFO: New stock: 10  
[2026-07-11 10:04:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757073079"} 
[2026-07-11 10:05:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757112519","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"19.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T07:35:36.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 10:05:11] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-07-11 10:05:11] production.INFO: Old stock: 19.00  
[2026-07-11 10:05:11] production.INFO: Quantity deducted: 1  
[2026-07-11 10:05:11] production.INFO: New stock: 18  
[2026-07-11 10:05:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757112519"} 
[2026-07-11 10:05:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757147663","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":939,"product_id":939,"name":"Betamethasone Oint (Elyvate)","sku":"PRD-00939","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":939,"name":"Betamethasone Oint (Elyvate)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1950.00","last_purchase_price":"1950.00","selling_price":"4000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00939","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:12:35.000000Z","updated_at":"2026-07-03T12:03:25.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:05:46] production.INFO: Stock deduction for product: Betamethasone Oint (Elyvate)  
[2026-07-11 10:05:46] production.INFO: Old stock: 4.00  
[2026-07-11 10:05:46] production.INFO: Quantity deducted: 1  
[2026-07-11 10:05:46] production.INFO: New stock: 3  
[2026-07-11 10:05:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757147663"} 
[2026-07-11 10:06:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757213558","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"70.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-05T11:56:22.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:06:52] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-07-11 10:06:52] production.INFO: Old stock: 70.00  
[2026-07-11 10:06:52] production.INFO: Quantity deducted: 1  
[2026-07-11 10:06:52] production.INFO: New stock: 69  
[2026-07-11 10:06:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757213558"} 
[2026-07-11 10:09:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757376782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"18.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T05:49:12.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:09:37] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-11 10:09:37] production.INFO: Old stock: 18.00  
[2026-07-11 10:09:37] production.INFO: Quantity deducted: 1  
[2026-07-11 10:09:37] production.INFO: New stock: 17  
[2026-07-11 10:09:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757376782"} 
[2026-07-11 10:10:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757413349","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"24.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-29T09:03:58.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:10:12] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-07-11 10:10:12] production.INFO: Old stock: 24.00  
[2026-07-11 10:10:12] production.INFO: Quantity deducted: 1  
[2026-07-11 10:10:12] production.INFO: New stock: 23  
[2026-07-11 10:10:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757413349"} 
[2026-07-11 10:10:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757459397","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":2,"subtotal":2000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"97.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T13:58:55.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:10:58] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-11 10:10:58] production.INFO: Old stock: 97.00  
[2026-07-11 10:10:58] production.INFO: Quantity deducted: 2  
[2026-07-11 10:10:58] production.INFO: New stock: 95  
[2026-07-11 10:10:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757459397"} 
[2026-07-11 10:11:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757506509","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"155.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T14:39:47.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 10:11:45] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-11 10:11:45] production.INFO: Old stock: 155.00  
[2026-07-11 10:11:45] production.INFO: Quantity deducted: 1  
[2026-07-11 10:11:45] production.INFO: New stock: 154  
[2026-07-11 10:11:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757506509"} 
[2026-07-11 10:12:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783757555645","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"154.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T08:11:45.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:12:34] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-11 10:12:34] production.INFO: Old stock: 154.00  
[2026-07-11 10:12:34] production.INFO: Quantity deducted: 2  
[2026-07-11 10:12:34] production.INFO: New stock: 152  
[2026-07-11 10:12:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783757555645"} 
[2026-07-11 10:26:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783758418362","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"36.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-10T14:17:04.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 10:26:57] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-11 10:26:57] production.INFO: Old stock: 36.00  
[2026-07-11 10:26:57] production.INFO: Quantity deducted: 1  
[2026-07-11 10:26:57] production.INFO: New stock: 35  
[2026-07-11 10:26:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783758418362"} 
[2026-07-11 10:42:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783759360725","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"6.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T15:18:43.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:42:41] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-11 10:42:41] production.INFO: Old stock: 6.00  
[2026-07-11 10:42:41] production.INFO: Quantity deducted: 1  
[2026-07-11 10:42:41] production.INFO: New stock: 5  
[2026-07-11 10:42:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783759360725"} 
[2026-07-11 10:44:30] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783759469868","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"5.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T08:42:41.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"44.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-10T10:09:07.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":2,"subtotal":2000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"152.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T08:12:34.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:44:30] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-11 10:44:30] production.INFO: Old stock: 5.00  
[2026-07-11 10:44:30] production.INFO: Quantity deducted: 1  
[2026-07-11 10:44:30] production.INFO: New stock: 4  
[2026-07-11 10:44:30] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-11 10:44:30] production.INFO: Old stock: 44.00  
[2026-07-11 10:44:30] production.INFO: Quantity deducted: 1  
[2026-07-11 10:44:30] production.INFO: New stock: 43  
[2026-07-11 10:44:30] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-11 10:44:30] production.INFO: Old stock: 152.00  
[2026-07-11 10:44:30] production.INFO: Quantity deducted: 2  
[2026-07-11 10:44:30] production.INFO: New stock: 150  
[2026-07-11 10:44:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783759469868"} 
[2026-07-11 10:56:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783760215337","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"74.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T15:37:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"6.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T10:09:07.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 10:56:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-11 10:56:54] production.INFO: Old stock: 74.00  
[2026-07-11 10:56:54] production.INFO: Quantity deducted: 2  
[2026-07-11 10:56:54] production.INFO: New stock: 72  
[2026-07-11 10:56:54] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-11 10:56:54] production.INFO: Old stock: 6.00  
[2026-07-11 10:56:54] production.INFO: Quantity deducted: 1  
[2026-07-11 10:56:54] production.INFO: New stock: 5  
[2026-07-11 10:56:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783760215337"} 
[2026-07-11 11:16:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783761379492","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"159.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T08:01:52.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 11:16:19] production.INFO: Stock deduction for product: HEDAX  
[2026-07-11 11:16:19] production.INFO: Old stock: 159.00  
[2026-07-11 11:16:19] production.INFO: Quantity deducted: 2  
[2026-07-11 11:16:19] production.INFO: New stock: 157  
[2026-07-11 11:16:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783761379492"} 
[2026-07-11 11:44:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783763065021","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":169,"product_id":169,"name":"Cevite Syrup","sku":"0730","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":169,"name":"Cevite Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0730","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-05-20T07:28:28.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 11:44:25] production.INFO: Stock deduction for product: Cevite Syrup  
[2026-07-11 11:44:25] production.INFO: Old stock: 4.00  
[2026-07-11 11:44:25] production.INFO: Quantity deducted: 1  
[2026-07-11 11:44:25] production.INFO: New stock: 3  
[2026-07-11 11:44:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783763065021"} 
[2026-07-11 11:54:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783763694338","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":217,"product_id":217,"name":"Dawasprin 75","sku":"1369","price":"1000.00","selling_price":"1000.00","purchase_price":"420.00","quantity":10,"subtotal":10000,"product":{"id":217,"name":"Dawasprin 75","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"7","brand_id":"31","supplier_id":null,"purchase_price":"420.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"47.00","stock":"47.00","product_type":"Single","tax":null,"sku":"1369","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-10","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-10T09:16:25.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":229,"product_id":229,"name":"DENK (Amlodipine 5mg)","sku":"1251","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":5,"subtotal":50000,"product":{"id":229,"name":"DENK (Amlodipine 5mg)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"18","brand_id":"9","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"1251","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-04-18T07:53:54.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 11:54:54] production.INFO: Stock deduction for product: Dawasprin 75  
[2026-07-11 11:54:54] production.INFO: Old stock: 47.00  
[2026-07-11 11:54:54] production.INFO: Quantity deducted: 10  
[2026-07-11 11:54:54] production.INFO: New stock: 37  
[2026-07-11 11:54:54] production.INFO: Stock deduction for product: DENK (Amlodipine 5mg)  
[2026-07-11 11:54:54] production.INFO: Old stock: 15.00  
[2026-07-11 11:54:54] production.INFO: Quantity deducted: 5  
[2026-07-11 11:54:54] production.INFO: New stock: 10  
[2026-07-11 11:54:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783763694338"} 
[2026-07-11 11:58:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783763912609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"35.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-08T10:09:06.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"4.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T08:44:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 11:58:31] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-07-11 11:58:31] production.INFO: Old stock: 35.00  
[2026-07-11 11:58:31] production.INFO: Quantity deducted: 1  
[2026-07-11 11:58:31] production.INFO: New stock: 34  
[2026-07-11 11:58:31] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-11 11:58:31] production.INFO: Old stock: 4.00  
[2026-07-11 11:58:31] production.INFO: Quantity deducted: 1  
[2026-07-11 11:58:31] production.INFO: New stock: 3  
[2026-07-11 11:58:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783763912609"} 
[2026-07-11 13:11:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783768263374","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"34.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T09:58:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 13:11:02] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-07-11 13:11:02] production.INFO: Old stock: 34.00  
[2026-07-11 13:11:02] production.INFO: Quantity deducted: 1  
[2026-07-11 13:11:02] production.INFO: New stock: 33  
[2026-07-11 13:11:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783768263374"} 
[2026-07-11 13:20:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783768813588","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":12,"subtotal":9600,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"102.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T14:59:49.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 13:20:13] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-11 13:20:13] production.INFO: Old stock: 102.00  
[2026-07-11 13:20:13] production.INFO: Quantity deducted: 12  
[2026-07-11 13:20:13] production.INFO: New stock: 90  
[2026-07-11 13:20:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783768813588"} 
[2026-07-11 13:53:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783770829523","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":397,"product_id":397,"name":"G&G Hair Removal Cream","sku":"3034","price":"11500.00","selling_price":"11500.00","purchase_price":"5333.00","quantity":1,"subtotal":11500,"product":{"id":397,"name":"G&G Hair Removal Cream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"5333.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3034","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-10T15:21:00.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 13:53:49] production.INFO: Stock deduction for product: G&G Hair Removal Cream  
[2026-07-11 13:53:49] production.INFO: Old stock: 11.00  
[2026-07-11 13:53:49] production.INFO: Quantity deducted: 1  
[2026-07-11 13:53:49] production.INFO: New stock: 10  
[2026-07-11 13:53:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783770829523"} 
[2026-07-11 13:58:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783771089793","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"43.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T08:44:30.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 13:58:10] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-11 13:58:10] production.INFO: Old stock: 43.00  
[2026-07-11 13:58:10] production.INFO: Quantity deducted: 1  
[2026-07-11 13:58:10] production.INFO: New stock: 42  
[2026-07-11 13:58:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783771089793"} 
[2026-07-11 14:00:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783771235162","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"108.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-10T16:31:39.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 14:00:35] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-11 14:00:35] production.INFO: Old stock: 108.00  
[2026-07-11 14:00:35] production.INFO: Quantity deducted: 1  
[2026-07-11 14:00:35] production.INFO: New stock: 107  
[2026-07-11 14:00:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783771235162"} 
[2026-07-11 14:09:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783771752407","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":516,"product_id":516,"name":"LOFNAC GEL, 30g","sku":"3153","price":"7500.00","selling_price":"7500.00","purchase_price":"3650.00","quantity":1,"subtotal":7500,"product":{"id":516,"name":"LOFNAC GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"3650.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"8.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3153","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-28T07:57:07.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 14:09:12] production.INFO: Stock deduction for product: LOFNAC GEL, 30g  
[2026-07-11 14:09:12] production.INFO: Old stock: 8.00  
[2026-07-11 14:09:12] production.INFO: Quantity deducted: 1  
[2026-07-11 14:09:12] production.INFO: New stock: 7  
[2026-07-11 14:09:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783771752407"} 
[2026-07-11 14:10:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783771848974","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":663,"product_id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","sku":"3300","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":2,"subtotal":12000,"product":{"id":663,"name":"QWADERM CREAM (4-in-1-Anti-infective), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"26","supplier_id":null,"purchase_price":"3000.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"2.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3300","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T13:31:48.000000Z","brand":{"id":26,"name":"CIRON DRUGS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 14:10:49] production.INFO: Stock deduction for product: QWADERM CREAM (4-in-1-Anti-infective), 30g  
[2026-07-11 14:10:49] production.INFO: Old stock: 2.00  
[2026-07-11 14:10:49] production.INFO: Quantity deducted: 2  
[2026-07-11 14:10:49] production.INFO: New stock: 0  
[2026-07-11 14:10:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783771848974"} 
[2026-07-11 14:43:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783773805814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"10.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-11T08:04:32.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":935,"product_id":935,"name":"Tuxiril Syrup\t100ml","sku":"PRD-00935","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":935,"name":"Tuxiril Syrup\t100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"24","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2950.00","last_purchase_price":"2950.00","selling_price":"6000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00935","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:02:25.000000Z","updated_at":"2026-07-02T20:02:25.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 14:43:26] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-11 14:43:26] production.INFO: Old stock: 10.00  
[2026-07-11 14:43:26] production.INFO: Quantity deducted: 1  
[2026-07-11 14:43:26] production.INFO: New stock: 9  
[2026-07-11 14:43:26] production.INFO: Stock deduction for product: Tuxiril Syrup	100ml  
[2026-07-11 14:43:26] production.INFO: Old stock: 5.00  
[2026-07-11 14:43:26] production.INFO: Quantity deducted: 1  
[2026-07-11 14:43:26] production.INFO: New stock: 4  
[2026-07-11 14:43:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783773805814"} 
[2026-07-11 14:45:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783773911213","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":900,"product_id":900,"name":"Kamasutra Condoms","sku":"PRD-00900","price":"3000.00","selling_price":"3000.00","purchase_price":"1250.00","quantity":1,"subtotal":3000,"product":{"id":900,"name":"Kamasutra Condoms","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"3000.00","current_stock":"47.00","stock":"48.00","product_type":"Single","tax":null,"sku":"PRD-00900","image":null,"description":null,"alert_quantity":"5.00","expiry_date":"2026-07-04","last_purchase_date":"2026-06-03","created_at":"2026-06-03T10:28:14.000000Z","updated_at":"2026-07-04T18:16:02.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 14:45:10] production.INFO: Stock deduction for product: Kamasutra Condoms  
[2026-07-11 14:45:10] production.INFO: Old stock: 47.00  
[2026-07-11 14:45:10] production.INFO: Quantity deducted: 1  
[2026-07-11 14:45:10] production.INFO: New stock: 46  
[2026-07-11 14:45:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783773911213"} 
[2026-07-11 14:46:59] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783774019636","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"91.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-10T09:41:52.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":871,"product_id":871,"name":"Azithromycin (Zithrox) Suspension","sku":"PRD-00871","price":"6000.00","selling_price":"6000.00","purchase_price":"2500.00","quantity":1,"subtotal":6000,"product":{"id":871,"name":"Azithromycin (Zithrox) Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"55","supplier_id":"1","purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"6000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00871","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2028-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T09:32:17.000000Z","updated_at":"2026-07-10T13:21:19.000000Z","brand":{"id":55,"name":"MOHINI","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"9.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-11T12:43:26.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 14:46:59] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-11 14:47:00] production.INFO: Old stock: 91.00  
[2026-07-11 14:47:00] production.INFO: Quantity deducted: 1  
[2026-07-11 14:47:00] production.INFO: New stock: 90  
[2026-07-11 14:47:00] production.INFO: Stock deduction for product: Azithromycin (Zithrox) Suspension  
[2026-07-11 14:47:00] production.INFO: Old stock: 1.00  
[2026-07-11 14:47:00] production.INFO: Quantity deducted: 1  
[2026-07-11 14:47:00] production.INFO: New stock: 0  
[2026-07-11 14:47:00] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-11 14:47:00] production.INFO: Old stock: 9.00  
[2026-07-11 14:47:00] production.INFO: Quantity deducted: 1  
[2026-07-11 14:47:00] production.INFO: New stock: 8  
[2026-07-11 14:47:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783774019636"} 
[2026-07-11 15:05:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783775111128","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"54.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T08:51:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 15:05:11] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-11 15:05:11] production.INFO: Old stock: 54.00  
[2026-07-11 15:05:11] production.INFO: Quantity deducted: 1  
[2026-07-11 15:05:11] production.INFO: New stock: 53  
[2026-07-11 15:05:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783775111128"} 
[2026-07-11 15:17:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783775833349","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":384,"product_id":384,"name":"Frusemide 40 mg","sku":"3021","price":"1700.00","selling_price":"1700.00","purchase_price":"894.00","quantity":1,"subtotal":1700,"product":{"id":384,"name":"Frusemide 40 mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"894.00","last_purchase_price":null,"selling_price":"1700.00","current_stock":"127.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3021","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-02T10:36:37.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 15:17:12] production.INFO: Stock deduction for product: Frusemide 40 mg  
[2026-07-11 15:17:12] production.INFO: Old stock: 127.00  
[2026-07-11 15:17:12] production.INFO: Quantity deducted: 1  
[2026-07-11 15:17:12] production.INFO: New stock: 126  
[2026-07-11 15:17:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783775833349"} 
[2026-07-11 15:18:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783775938836","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":3,"subtotal":1200,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"157.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T09:16:19.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 15:18:59] production.INFO: Stock deduction for product: HEDAX  
[2026-07-11 15:18:59] production.INFO: Old stock: 157.00  
[2026-07-11 15:18:59] production.INFO: Quantity deducted: 3  
[2026-07-11 15:18:59] production.INFO: New stock: 154  
[2026-07-11 15:18:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783775938836"} 
[2026-07-11 15:54:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783778091035","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":99,"product_id":99,"name":"BECLOMIN CREAM, 15g","sku":"0695","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":99,"name":"BECLOMIN CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"20.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0695","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-07T16:09:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 15:54:50] production.INFO: Stock deduction for product: BECLOMIN CREAM, 15g  
[2026-07-11 15:54:50] production.INFO: Old stock: 20.00  
[2026-07-11 15:54:50] production.INFO: Quantity deducted: 1  
[2026-07-11 15:54:50] production.INFO: New stock: 19  
[2026-07-11 15:54:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783778091035"} 
[2026-07-11 16:07:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783778841271","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":293,"product_id":293,"name":"ERYTHROMYCIN TABLETS","sku":"0803","price":"7000.00","selling_price":"7000.00","purchase_price":"1439.00","quantity":1,"subtotal":7000,"product":{"id":293,"name":"ERYTHROMYCIN TABLETS","business_location":"EDUC Pharmacy","unit_id":"61","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1439.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0803","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-27T09:59:43.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 16:07:21] production.INFO: Stock deduction for product: ERYTHROMYCIN TABLETS  
[2026-07-11 16:07:21] production.INFO: Old stock: 46.00  
[2026-07-11 16:07:21] production.INFO: Quantity deducted: 1  
[2026-07-11 16:07:21] production.INFO: New stock: 45  
[2026-07-11 16:07:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783778841271"} 
[2026-07-11 16:10:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783779049958","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"16.00","stock":"18.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-10T12:32:30.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":2500},{"method":"cash","amount":500}]}} 
[2026-07-11 16:45:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783781114112","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"2000.00","selling_price":"2000.00","purchase_price":"550.00","quantity":1,"subtotal":2000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"81.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-09T15:12:32.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 16:45:15] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-07-11 16:45:15] production.INFO: Old stock: 81.00  
[2026-07-11 16:45:15] production.INFO: Quantity deducted: 1  
[2026-07-11 16:45:15] production.INFO: New stock: 80  
[2026-07-11 16:45:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783781114112"} 
[2026-07-11 17:10:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783782629201","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":792,"product_id":792,"name":"COLDRIL SYRUP(100ML)","sku":"0745","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":792,"name":"COLDRIL SYRUP(100ML)","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"15.00","stock":"16.00","product_type":"Single","tax":null,"sku":"0745","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-10T11:52:55.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 17:10:31] production.INFO: Stock deduction for product: COLDRIL SYRUP(100ML)  
[2026-07-11 17:10:31] production.INFO: Old stock: 15.00  
[2026-07-11 17:10:31] production.INFO: Quantity deducted: 1  
[2026-07-11 17:10:31] production.INFO: New stock: 14  
[2026-07-11 17:10:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783782629201"} 
[2026-07-11 17:16:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783782989391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"72.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T08:56:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 17:16:31] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-11 17:16:31] production.INFO: Old stock: 72.00  
[2026-07-11 17:16:31] production.INFO: Quantity deducted: 1  
[2026-07-11 17:16:31] production.INFO: New stock: 71  
[2026-07-11 17:16:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783782989391"} 
[2026-07-11 17:33:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783783988523","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":6,"subtotal":6000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"30.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-09T14:02:11.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 17:33:08] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-07-11 17:33:08] production.INFO: Old stock: 30.00  
[2026-07-11 17:33:08] production.INFO: Quantity deducted: 6  
[2026-07-11 17:33:08] production.INFO: New stock: 24  
[2026-07-11 17:33:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783783988523"} 
[2026-07-11 17:35:57] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783784156082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":392,"product_id":392,"name":"FUNGIFEN-V CREAM (Clotrimazole 2% w/w), 30g","sku":"3029","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":392,"name":"FUNGIFEN-V CREAM (Clotrimazole 2% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"30","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"3029","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-09T12:34:14.000000Z","brand":{"id":30,"name":"CROWN Pharmaceuticals","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":221,"product_id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","sku":"0772","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":221,"name":"DAZOLE CREAM (Clotrimazole 1% w/w), 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"5.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0772","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-09T16:31:10.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":396,"product_id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","sku":"3033","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":396,"name":"G-DERM (The Multi-Action Skin Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"6.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3033","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T14:38:08.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 17:35:57] production.INFO: Stock deduction for product: FUNGIFEN-V CREAM (Clotrimazole 2% w/w), 30g  
[2026-07-11 17:35:57] production.INFO: Old stock: 10.00  
[2026-07-11 17:35:57] production.INFO: Quantity deducted: 1  
[2026-07-11 17:35:57] production.INFO: New stock: 9  
[2026-07-11 17:35:57] production.INFO: Stock deduction for product: DAZOLE CREAM (Clotrimazole 1% w/w), 20g  
[2026-07-11 17:35:57] production.INFO: Old stock: 5.00  
[2026-07-11 17:35:57] production.INFO: Quantity deducted: 1  
[2026-07-11 17:35:57] production.INFO: New stock: 4  
[2026-07-11 17:35:57] production.INFO: Stock deduction for product: G-DERM (The Multi-Action Skin Cream), 30g  
[2026-07-11 17:35:57] production.INFO: Old stock: 6.00  
[2026-07-11 17:35:57] production.INFO: Quantity deducted: 1  
[2026-07-11 17:35:57] production.INFO: New stock: 5  
[2026-07-11 17:35:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783784156082"} 
[2026-07-11 17:38:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783784282953","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"168.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-10T18:28:03.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 17:38:03] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-11 17:38:03] production.INFO: Old stock: 168.00  
[2026-07-11 17:38:03] production.INFO: Quantity deducted: 2  
[2026-07-11 17:38:03] production.INFO: New stock: 166  
[2026-07-11 17:38:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783784282953"} 
[2026-07-11 17:42:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783784526152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"107.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T12:00:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 17:42:07] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-11 17:42:07] production.INFO: Old stock: 107.00  
[2026-07-11 17:42:07] production.INFO: Quantity deducted: 1  
[2026-07-11 17:42:07] production.INFO: New stock: 106  
[2026-07-11 17:42:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783784526152"} 
[2026-07-11 17:42:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783784551152","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"33.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T11:11:02.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"3.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T09:58:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 17:42:31] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-07-11 17:42:31] production.INFO: Old stock: 33.00  
[2026-07-11 17:42:31] production.INFO: Quantity deducted: 1  
[2026-07-11 17:42:31] production.INFO: New stock: 32  
[2026-07-11 17:42:31] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-11 17:42:31] production.INFO: Old stock: 3.00  
[2026-07-11 17:42:31] production.INFO: Quantity deducted: 1  
[2026-07-11 17:42:31] production.INFO: New stock: 2  
[2026-07-11 17:42:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783784551152"} 
[2026-07-11 17:56:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783785381997","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"17.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T08:09:37.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 17:56:22] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-11 17:56:22] production.INFO: Old stock: 17.00  
[2026-07-11 17:56:22] production.INFO: Quantity deducted: 1  
[2026-07-11 17:56:22] production.INFO: New stock: 16  
[2026-07-11 17:56:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783785381997"} 
[2026-07-11 18:13:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783786395448","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"42.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T11:58:10.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 18:13:15] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-11 18:13:15] production.INFO: Old stock: 42.00  
[2026-07-11 18:13:15] production.INFO: Quantity deducted: 1  
[2026-07-11 18:13:15] production.INFO: New stock: 41  
[2026-07-11 18:13:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783786395448"} 
[2026-07-11 18:22:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783786960429","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":2,"subtotal":3000,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-30T07:22:42.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"cash"}} 
[2026-07-11 18:22:42] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-07-11 18:22:42] production.INFO: Old stock: 28.00  
[2026-07-11 18:22:42] production.INFO: Quantity deducted: 2  
[2026-07-11 18:22:42] production.INFO: New stock: 26  
[2026-07-11 18:22:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783786960429"} 
[2026-07-11 19:24:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783790689607","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":515,"product_id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","sku":"3152","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":515,"name":"LOFNAC AP (PARACETAMOL + ACECLOFENAC)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"32.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3152","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-04T15:05:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 19:24:50] production.INFO: Stock deduction for product: LOFNAC AP (PARACETAMOL + ACECLOFENAC)  
[2026-07-11 19:24:50] production.INFO: Old stock: 32.00  
[2026-07-11 19:24:50] production.INFO: Quantity deducted: 1  
[2026-07-11 19:24:50] production.INFO: New stock: 31  
[2026-07-11 19:24:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783790689607"} 
[2026-07-11 19:33:40] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783791220268","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":584,"product_id":584,"name":"Nifedipine 10mg","sku":"3221","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":584,"name":"Nifedipine 10mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"26.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3221","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-05T16:48:24.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"72.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-10T17:34:45.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 19:33:40] production.INFO: Stock deduction for product: Nifedipine 10mg  
[2026-07-11 19:33:40] production.INFO: Old stock: 26.00  
[2026-07-11 19:33:40] production.INFO: Quantity deducted: 1  
[2026-07-11 19:33:40] production.INFO: New stock: 25  
[2026-07-11 19:33:40] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-11 19:33:40] production.INFO: Old stock: 72.00  
[2026-07-11 19:33:40] production.INFO: Quantity deducted: 1  
[2026-07-11 19:33:40] production.INFO: New stock: 71  
[2026-07-11 19:33:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783791220268"} 
[2026-07-11 19:40:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783791629442","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"28.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-07T16:07:18.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 19:40:29] production.INFO: Stock deduction for product: Iduplus  
[2026-07-11 19:40:29] production.INFO: Old stock: 28.00  
[2026-07-11 19:40:29] production.INFO: Quantity deducted: 1  
[2026-07-11 19:40:29] production.INFO: New stock: 27  
[2026-07-11 19:40:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783791629442"} 
[2026-07-11 20:02:21] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783792941293","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"53.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T13:05:11.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"35.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-11T08:26:57.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-11 20:02:21] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-11 20:02:21] production.INFO: Old stock: 53.00  
[2026-07-11 20:02:21] production.INFO: Quantity deducted: 1  
[2026-07-11 20:02:21] production.INFO: New stock: 52  
[2026-07-11 20:02:22] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-11 20:02:22] production.INFO: Old stock: 35.00  
[2026-07-11 20:02:22] production.INFO: Quantity deducted: 1  
[2026-07-11 20:02:22] production.INFO: New stock: 34  
[2026-07-11 20:02:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783792941293"} 
[2026-07-11 20:08:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783793313755","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":239,"product_id":239,"name":"Dexacoral-N EYE/EAR","sku":"1192","price":"3500.00","selling_price":"3500.00","purchase_price":"1950.00","quantity":1,"subtotal":3500,"product":{"id":239,"name":"Dexacoral-N EYE/EAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"1.00","stock":"21.00","product_type":"Single","tax":null,"sku":"1192","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-05T16:58:23.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":519,"product_id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","sku":"3156","price":"1500.00","selling_price":"1500.00","purchase_price":"650.00","quantity":1,"subtotal":1500,"product":{"id":519,"name":"LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"650.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"69.00","stock":"84.00","product_type":"Single","tax":null,"sku":"3156","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T08:06:52.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 20:08:33] production.INFO: Stock deduction for product: Dexacoral-N EYE/EAR  
[2026-07-11 20:08:33] production.INFO: Old stock: 1.00  
[2026-07-11 20:08:33] production.INFO: Quantity deducted: 1  
[2026-07-11 20:08:33] production.INFO: New stock: 0  
[2026-07-11 20:08:34] production.INFO: Stock deduction for product: LOFNAC P (PARACETAMOL + DICLOFENAC) TABLETS  
[2026-07-11 20:08:34] production.INFO: Old stock: 69.00  
[2026-07-11 20:08:34] production.INFO: Quantity deducted: 1  
[2026-07-11 20:08:34] production.INFO: New stock: 68  
[2026-07-11 20:08:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783793313755"} 
[2026-07-11 20:16:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783793816064","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"238.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-10T18:20:23.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-11 20:16:56] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-11 20:16:56] production.INFO: Old stock: 238.00  
[2026-07-11 20:16:56] production.INFO: Quantity deducted: 6  
[2026-07-11 20:16:56] production.INFO: New stock: 232  
[2026-07-11 20:16:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783793816064"} 
[2026-07-11 20:45:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783795513785","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":2,"subtotal":4000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"34.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-11T18:02:22.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-11 20:45:13] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-11 20:45:13] production.INFO: Old stock: 34.00  
[2026-07-11 20:45:13] production.INFO: Quantity deducted: 2  
[2026-07-11 20:45:13] production.INFO: New stock: 32  
[2026-07-11 20:45:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783795513785"} 
[2026-07-12 08:41:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783838475553","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"71.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T15:16:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":397,"product_id":397,"name":"G&G Hair Removal Cream","sku":"3034","price":"11500.00","selling_price":"11500.00","purchase_price":"5333.00","quantity":1,"subtotal":11500,"product":{"id":397,"name":"G&G Hair Removal Cream","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"5333.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3034","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T11:53:49.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 08:41:16] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 08:41:16] production.INFO: Old stock: 71.00  
[2026-07-12 08:41:16] production.INFO: Quantity deducted: 1  
[2026-07-12 08:41:16] production.INFO: New stock: 70  
[2026-07-12 08:41:16] production.INFO: Stock deduction for product: G&G Hair Removal Cream  
[2026-07-12 08:41:16] production.INFO: Old stock: 10.00  
[2026-07-12 08:41:16] production.INFO: Quantity deducted: 1  
[2026-07-12 08:41:16] production.INFO: New stock: 9  
[2026-07-12 08:41:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783838475553"} 
[2026-07-12 09:44:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783842263332","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"71.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T15:16:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"220.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-09T14:54:15.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 09:44:25] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 09:44:25] production.INFO: Old stock: 70.00  
[2026-07-12 09:44:25] production.INFO: Quantity deducted: 1  
[2026-07-12 09:44:25] production.INFO: New stock: 69  
[2026-07-12 09:44:25] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-12 09:44:25] production.INFO: Old stock: 220.00  
[2026-07-12 09:44:25] production.INFO: Quantity deducted: 2  
[2026-07-12 09:44:25] production.INFO: New stock: 218  
[2026-07-12 09:44:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783842263332"} 
[2026-07-12 09:44:59] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783842298151","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":60,"product_id":60,"name":"Amlodipine 10mg(Amlodawa)","sku":"1321","price":"2000.00","selling_price":"2000.00","purchase_price":"685.00","quantity":1,"subtotal":2000,"product":{"id":60,"name":"Amlodipine 10mg(Amlodawa)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"685.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1321","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-06-26T15:53:30.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":689,"product_id":689,"name":"Shaver","sku":"3326","price":"1000.00","selling_price":"1000.00","purchase_price":"416.00","quantity":1,"subtotal":1000,"product":{"id":689,"name":"Shaver","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"416.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3326","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T15:37:21.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 09:44:59] production.INFO: Stock deduction for product: Amlodipine 10mg(Amlodawa)  
[2026-07-12 09:44:59] production.INFO: Old stock: 20.00  
[2026-07-12 09:44:59] production.INFO: Quantity deducted: 1  
[2026-07-12 09:44:59] production.INFO: New stock: 19  
[2026-07-12 09:44:59] production.INFO: Stock deduction for product: Shaver  
[2026-07-12 09:44:59] production.INFO: Old stock: 3.00  
[2026-07-12 09:44:59] production.INFO: Quantity deducted: 1  
[2026-07-12 09:44:59] production.INFO: New stock: 2  
[2026-07-12 09:44:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783842298151"} 
[2026-07-12 09:59:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783843144867","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":542,"product_id":542,"name":"Mask Medical Blue","sku":"3179","price":"500.00","selling_price":"500.00","purchase_price":"300.00","quantity":8,"subtotal":4000,"product":{"id":542,"name":"Mask Medical Blue","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"300.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"257.00","stock":"319.00","product_type":"Single","tax":null,"sku":"3179","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T08:03:30.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 09:59:07] production.INFO: Stock deduction for product: Mask Medical Blue  
[2026-07-12 09:59:07] production.INFO: Old stock: 257.00  
[2026-07-12 09:59:07] production.INFO: Quantity deducted: 8  
[2026-07-12 09:59:07] production.INFO: New stock: 249  
[2026-07-12 09:59:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783843144867"} 
[2026-07-12 10:14:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783844087082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"150.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T08:44:30.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 10:14:49] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-12 10:14:49] production.INFO: Old stock: 150.00  
[2026-07-12 10:14:49] production.INFO: Quantity deducted: 1  
[2026-07-12 10:14:49] production.INFO: New stock: 149  
[2026-07-12 10:14:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783844087082"} 
[2026-07-12 10:45:28] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783845904195","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":108,"product_id":108,"name":"Benylin Original -100ml","sku":"1311","price":"30000.00","selling_price":"30000.00","purchase_price":"15500.00","quantity":1,"subtotal":30000,"product":{"id":108,"name":"Benylin Original -100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"15500.00","last_purchase_price":null,"selling_price":"30000.00","current_stock":"2.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1311","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T18:39:42.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"2.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T15:42:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":4,"subtotal":800,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"218.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T07:44:25.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 10:45:28] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783845913975","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":108,"product_id":108,"name":"Benylin Original -100ml","sku":"1311","price":"30000.00","selling_price":"30000.00","purchase_price":"15500.00","quantity":1,"subtotal":30000,"product":{"id":108,"name":"Benylin Original -100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"15500.00","last_purchase_price":null,"selling_price":"30000.00","current_stock":"2.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1311","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T18:39:42.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"2.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T15:42:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":4,"subtotal":800,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"218.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T07:44:25.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 10:45:28] production.INFO: Stock deduction for product: Benylin Original -100ml  
[2026-07-12 10:45:28] production.INFO: Old stock: 2.00  
[2026-07-12 10:45:28] production.INFO: Quantity deducted: 1  
[2026-07-12 10:45:28] production.INFO: New stock: 1  
[2026-07-12 10:45:28] production.INFO: Stock deduction for product: Benylin Original -100ml  
[2026-07-12 10:45:28] production.INFO: Old stock: 2.00  
[2026-07-12 10:45:28] production.INFO: Quantity deducted: 1  
[2026-07-12 10:45:28] production.INFO: New stock: 1  
[2026-07-12 10:45:28] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-12 10:45:28] production.INFO: Old stock: 2.00  
[2026-07-12 10:45:28] production.INFO: Quantity deducted: 1  
[2026-07-12 10:45:28] production.INFO: New stock: 1  
[2026-07-12 10:45:28] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-12 10:45:28] production.INFO: Old stock: 1.00  
[2026-07-12 10:45:28] production.INFO: Quantity deducted: 1  
[2026-07-12 10:45:28] production.INFO: New stock: 0  
[2026-07-12 10:45:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-12 10:45:28] production.INFO: Old stock: 218.00  
[2026-07-12 10:45:28] production.INFO: Quantity deducted: 4  
[2026-07-12 10:45:28] production.INFO: New stock: 214  
[2026-07-12 10:45:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783845904195"} 
[2026-07-12 10:45:28] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-12 10:45:28] production.INFO: Old stock: 214.00  
[2026-07-12 10:45:28] production.INFO: Quantity deducted: 4  
[2026-07-12 10:45:28] production.INFO: New stock: 210  
[2026-07-12 10:45:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783845913975"} 
[2026-07-12 10:45:36] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783845927358","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":108,"product_id":108,"name":"Benylin Original -100ml","sku":"1311","price":"30000.00","selling_price":"30000.00","purchase_price":"15500.00","quantity":1,"subtotal":30000,"product":{"id":108,"name":"Benylin Original -100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"15500.00","last_purchase_price":null,"selling_price":"30000.00","current_stock":"2.00","stock":"4.00","product_type":"Single","tax":null,"sku":"1311","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-03T18:39:42.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"2.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T15:42:31.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":4,"subtotal":800,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"218.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T07:44:25.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 11:20:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783848053457","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"69.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T07:44:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 11:20:54] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 11:20:54] production.INFO: Old stock: 69.00  
[2026-07-12 11:20:54] production.INFO: Quantity deducted: 1  
[2026-07-12 11:20:54] production.INFO: New stock: 68  
[2026-07-12 11:20:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783848053457"} 
[2026-07-12 11:40:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783849218111","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":253,"product_id":253,"name":"DIPROSON CREAM (Betamethasone 0.05% w/w), 15g","sku":"0782","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":253,"name":"DIPROSON CREAM (Betamethasone 0.05% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0782","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-06-15T18:49:36.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 11:40:20] production.INFO: Stock deduction for product: DIPROSON CREAM (Betamethasone 0.05% w/w), 15g  
[2026-07-12 11:40:20] production.INFO: Old stock: 1.00  
[2026-07-12 11:40:20] production.INFO: Quantity deducted: 1  
[2026-07-12 11:40:20] production.INFO: New stock: 0  
[2026-07-12 11:40:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783849218111"} 
[2026-07-12 12:27:27] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783852046003","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"41.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T16:13:15.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"71.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-11T17:33:40.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 12:27:27] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-12 12:27:27] production.INFO: Old stock: 41.00  
[2026-07-12 12:27:27] production.INFO: Quantity deducted: 1  
[2026-07-12 12:27:27] production.INFO: New stock: 40  
[2026-07-12 12:27:27] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-12 12:27:27] production.INFO: Old stock: 71.00  
[2026-07-12 12:27:27] production.INFO: Quantity deducted: 1  
[2026-07-12 12:27:27] production.INFO: New stock: 70  
[2026-07-12 12:27:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783852046003"} 
[2026-07-12 12:27:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783852062382","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"68.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T09:20:54.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-12 12:27:43] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 12:27:43] production.INFO: Old stock: 68.00  
[2026-07-12 12:27:43] production.INFO: Quantity deducted: 1  
[2026-07-12 12:27:43] production.INFO: New stock: 67  
[2026-07-12 12:27:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783852062382"} 
[2026-07-12 14:27:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783859270150","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"70.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-12T10:27:27.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 14:27:48] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-12 14:27:48] production.INFO: Old stock: 70.00  
[2026-07-12 14:27:48] production.INFO: Quantity deducted: 1  
[2026-07-12 14:27:48] production.INFO: New stock: 69  
[2026-07-12 14:27:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783859270150"} 
[2026-07-12 14:35:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783859707980","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":1,"subtotal":500,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"36.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-06T09:58:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 14:35:08] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-07-12 14:35:08] production.INFO: Old stock: 36.00  
[2026-07-12 14:35:08] production.INFO: Quantity deducted: 1  
[2026-07-12 14:35:08] production.INFO: New stock: 35  
[2026-07-12 14:35:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783859707980"} 
[2026-07-12 14:47:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783860452465","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"67.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T12:24:21.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 14:47:32] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 14:47:32] production.INFO: Old stock: 67.00  
[2026-07-12 14:47:32] production.INFO: Quantity deducted: 1  
[2026-07-12 14:47:32] production.INFO: New stock: 66  
[2026-07-12 14:47:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783860452465"} 
[2026-07-12 14:51:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783860682680","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":521,"product_id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","sku":"3158","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":521,"name":"LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"18.00","stock":"23.00","product_type":"Single","tax":null,"sku":"3158","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T14:13:12.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 14:51:22] production.INFO: Stock deduction for product: LOFNAC-100 SUPPOSITORY (Diclofenac Suppositories)  
[2026-07-12 14:51:22] production.INFO: Old stock: 18.00  
[2026-07-12 14:51:22] production.INFO: Quantity deducted: 1  
[2026-07-12 14:51:22] production.INFO: New stock: 17  
[2026-07-12 14:51:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783860682680"} 
[2026-07-12 15:34:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783863265597","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":293,"product_id":293,"name":"ERYTHROMYCIN TABLETS","sku":"0803","price":"7000.00","selling_price":"7000.00","purchase_price":"1439.00","quantity":1,"subtotal":7000,"product":{"id":293,"name":"ERYTHROMYCIN TABLETS","business_location":"EDUC Pharmacy","unit_id":"61","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1439.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0803","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-11T14:07:21.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-12 15:34:25] production.INFO: Stock deduction for product: ERYTHROMYCIN TABLETS  
[2026-07-12 15:34:25] production.INFO: Old stock: 45.00  
[2026-07-12 15:34:25] production.INFO: Quantity deducted: 1  
[2026-07-12 15:34:25] production.INFO: New stock: 44  
[2026-07-12 15:34:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783863265597"} 
[2026-07-12 16:09:12] production.INFO: Stock Adjustment - Initial State {"product_id":"269","previous_quantity":"16.00","previous_selling_price":"3000.00","validated_data":{"product_id":"269","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:09:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":269,"new_quantity":26.0,"current_stock":26.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:10:25] production.INFO: Stock Adjustment - Initial State {"product_id":"252","previous_quantity":"20.00","previous_selling_price":"1000.00","validated_data":{"product_id":"252","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:10:25] production.INFO: Stock Adjustment - After Quantity Save {"product_id":252,"new_quantity":30.0,"current_stock":30.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:10:57] production.INFO: Stock Adjustment - Initial State {"product_id":"220","previous_quantity":"6.00","previous_selling_price":"32000.00","validated_data":{"product_id":"220","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:10:57] production.INFO: Stock Adjustment - After Quantity Save {"product_id":220,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:12:07] production.INFO: Stock Adjustment - Initial State {"product_id":"737","previous_quantity":"31.00","previous_selling_price":"18500.00","validated_data":{"product_id":"737","adjustment_type":"add","quantity":"6","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:12:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":737,"new_quantity":37.0,"current_stock":37.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:12:56] production.INFO: Stock Adjustment - Initial State {"product_id":"165","previous_quantity":"7.00","previous_selling_price":"20000.00","validated_data":{"product_id":"165","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:12:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":165,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:13:43] production.INFO: Stock Adjustment - Initial State {"product_id":"861","previous_quantity":"2.00","previous_selling_price":"20000.00","validated_data":{"product_id":"861","adjustment_type":"add","quantity":"6","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:13:43] production.INFO: Stock Adjustment - After Quantity Save {"product_id":861,"new_quantity":8.0,"current_stock":8.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:18:55] production.INFO: Stock Adjustment - Initial State {"product_id":"162","previous_quantity":"4.00","previous_selling_price":"20000.00","validated_data":{"product_id":"162","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:18:55] production.INFO: Stock Adjustment - After Quantity Save {"product_id":162,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:19:27] production.INFO: Stock Adjustment - Initial State {"product_id":"861","previous_quantity":"8.00","previous_selling_price":"20000.00","validated_data":{"product_id":"861","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:19:27] production.INFO: Stock Adjustment - After Quantity Save {"product_id":861,"new_quantity":9.0,"current_stock":9.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:21:06] production.INFO: Stock Adjustment - Initial State {"product_id":"860","previous_quantity":"4.00","previous_selling_price":"15000.00","validated_data":{"product_id":"860","adjustment_type":"add","quantity":"3","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:21:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":860,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:22:56] production.INFO: Stock Adjustment - Initial State {"product_id":"655","previous_quantity":"0.00","previous_selling_price":"11000.00","validated_data":{"product_id":"655","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:22:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":655,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:24:24] production.INFO: Stock Adjustment - Initial State {"product_id":"70","previous_quantity":"5.00","previous_selling_price":"13000.00","validated_data":{"product_id":"70","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:24:24] production.INFO: Stock Adjustment - After Quantity Save {"product_id":70,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:28:01] production.INFO: Stock Adjustment - Initial State {"product_id":"521","previous_quantity":"17.00","previous_selling_price":"13000.00","validated_data":{"product_id":"521","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:28:01] production.INFO: Stock Adjustment - After Quantity Save {"product_id":521,"new_quantity":18.0,"current_stock":18.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:28:56] production.INFO: Stock Adjustment - Initial State {"product_id":"853","previous_quantity":"2.00","previous_selling_price":"15500.00","validated_data":{"product_id":"853","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:28:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":853,"new_quantity":4.0,"current_stock":4.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:29:37] production.INFO: Stock Adjustment - Initial State {"product_id":"852","previous_quantity":"5.00","previous_selling_price":"11500.00","validated_data":{"product_id":"852","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:29:37] production.INFO: Stock Adjustment - After Quantity Save {"product_id":852,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:30:46] production.INFO: Stock Adjustment - Initial State {"product_id":"185","previous_quantity":"2.00","previous_selling_price":"13000.00","validated_data":{"product_id":"185","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:30:46] production.INFO: Stock Adjustment - After Quantity Save {"product_id":185,"new_quantity":4.0,"current_stock":4.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:31:53] production.INFO: Stock Adjustment - Initial State {"product_id":"164","previous_quantity":"3.00","previous_selling_price":"20000.00","validated_data":{"product_id":"164","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:31:53] production.INFO: Stock Adjustment - After Quantity Save {"product_id":164,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:32:48] production.INFO: Stock Adjustment - Initial State {"product_id":"280","previous_quantity":"15.00","previous_selling_price":"2000.00","validated_data":{"product_id":"280","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:32:48] production.INFO: Stock Adjustment - After Quantity Save {"product_id":280,"new_quantity":25.0,"current_stock":25.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:35:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783866933442","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":737,"product_id":737,"name":"Tripride 2","sku":"3374","price":"18500.00","selling_price":"18500.00","purchase_price":"9300.00","quantity":1,"subtotal":18500,"product":{"id":737,"name":"Tripride 2","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":null,"supplier_id":null,"purchase_price":"9300.00","last_purchase_price":null,"selling_price":"18500.00","current_stock":"37.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3374","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T14:12:07.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-12 16:35:34] production.INFO: Stock deduction for product: Tripride 2  
[2026-07-12 16:35:34] production.INFO: Old stock: 37.00  
[2026-07-12 16:35:34] production.INFO: Quantity deducted: 1  
[2026-07-12 16:35:34] production.INFO: New stock: 36  
[2026-07-12 16:35:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783866933442"} 
[2026-07-12 16:39:32] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783867172404","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":624,"product_id":624,"name":"Pantoprazole (Pantin 40mg)","sku":"3261","price":"6000.00","selling_price":"6000.00","purchase_price":"2900.00","quantity":2,"subtotal":12000,"product":{"id":624,"name":"Pantoprazole (Pantin 40mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"2900.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3261","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-04T10:07:11.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":673,"product_id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","sku":"3310","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-24T16:54:31.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":532,"product_id":532,"name":"Lysoflam Tab","sku":"3169","price":"4000.00","selling_price":"4000.00","purchase_price":"1800.00","quantity":2,"subtotal":8000,"product":{"id":532,"name":"Lysoflam Tab","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"20","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"18.00","stock":"20.00","product_type":"Single","tax":null,"sku":"3169","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-28T14:08:25.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":117,"product_id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","sku":"0705","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":117,"name":"BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0705","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-29T06:24:51.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 16:39:32] production.INFO: Stock deduction for product: Pantoprazole (Pantin 40mg)  
[2026-07-12 16:39:32] production.INFO: Old stock: 6.00  
[2026-07-12 16:39:32] production.INFO: Quantity deducted: 2  
[2026-07-12 16:39:32] production.INFO: New stock: 4  
[2026-07-12 16:39:32] production.INFO: Stock deduction for product: RUFENAC GEL (Diclofenac gel), 30g  
[2026-07-12 16:39:32] production.INFO: Old stock: 2.00  
[2026-07-12 16:39:32] production.INFO: Quantity deducted: 1  
[2026-07-12 16:39:32] production.INFO: New stock: 1  
[2026-07-12 16:39:32] production.INFO: Stock deduction for product: Lysoflam Tab  
[2026-07-12 16:39:32] production.INFO: Old stock: 18.00  
[2026-07-12 16:39:32] production.INFO: Quantity deducted: 2  
[2026-07-12 16:39:32] production.INFO: New stock: 16  
[2026-07-12 16:39:32] production.INFO: Stock deduction for product: BETALEB CREAM (Betamethasone Valerate 0.1% w/w), 15g  
[2026-07-12 16:39:32] production.INFO: Old stock: 12.00  
[2026-07-12 16:39:32] production.INFO: Quantity deducted: 1  
[2026-07-12 16:39:32] production.INFO: New stock: 11  
[2026-07-12 16:39:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783867172404"} 
[2026-07-12 16:40:07] production.INFO: Product Store - Request Data {"all_data":{"_token":"xPXfFCTQb9KZxTOvL8qGF3cEdP43GDwstWqBoJBw","name":"Amlodipine 5mg (Zaar-5)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"500.00","selling_price":"1000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-12 16:40:07] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Amlodipine 5mg (Zaar-5)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-12 16:40:07] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Amlodipine 5mg (Zaar-5)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":"PRD-00989","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"500.00","last_purchase_date":"2026-07-12 16:40:07"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-12 16:40:07] production.INFO: Product Store - Product Created {"product_id":989,"product_name":"Amlodipine 5mg (Zaar-5)","product_sku":"PRD-00989"} 
[2026-07-12 16:43:12] production.INFO: Stock Adjustment - Initial State {"product_id":"65","previous_quantity":"19.00","previous_selling_price":"21000.00","validated_data":{"product_id":"65","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:43:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":65,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:46:50] production.INFO: Stock Adjustment - Initial State {"product_id":"213","previous_quantity":"4.00","previous_selling_price":"3500.00","validated_data":{"product_id":"213","adjustment_type":"add","quantity":"30","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:46:50] production.INFO: Stock Adjustment - After Quantity Save {"product_id":213,"new_quantity":34.0,"current_stock":34.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:49:03] production.INFO: Product Store - Request Data {"all_data":{"_token":"xPXfFCTQb9KZxTOvL8qGF3cEdP43GDwstWqBoJBw","name":"Ciprofloxacin Tablets 500mg (Ciproleb)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"2000.00","selling_price":"4000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-12 16:49:03] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ciprofloxacin Tablets 500mg (Ciproleb)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2000.00","selling_price":"4000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-12 16:49:03] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ciprofloxacin Tablets 500mg (Ciproleb)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2000.00","selling_price":"4000.00","sku":"PRD-00990","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"2000.00","last_purchase_date":"2026-07-12 16:49:03"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-12 16:49:03] production.INFO: Product Store - Product Created {"product_id":990,"product_name":"Ciprofloxacin Tablets 500mg (Ciproleb)","product_sku":"PRD-00990"} 
[2026-07-12 16:50:11] production.INFO: Product Store - Request Data {"all_data":{"_token":"xPXfFCTQb9KZxTOvL8qGF3cEdP43GDwstWqBoJBw","name":"Atenolo 100mg","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"500.00","selling_price":"1000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"10","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-12 16:50:11] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Atenolo 100mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":null,"alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-12 16:50:11] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Atenolo 100mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":"PRD-00991","alert_quantity":"10","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"500.00","last_purchase_date":"2026-07-12 16:50:11"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-12 16:50:11] production.INFO: Product Store - Product Created {"product_id":991,"product_name":"Atenolo 100mg","product_sku":"PRD-00991"} 
[2026-07-12 16:51:15] production.INFO: Stock Adjustment - Initial State {"product_id":"584","previous_quantity":"25.00","previous_selling_price":"2500.00","validated_data":{"product_id":"584","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-12"}} 
[2026-07-12 16:51:15] production.INFO: Stock Adjustment - After Quantity Save {"product_id":584,"new_quantity":35.0,"current_stock":35.0,"changes_made":"Quantity adjusted"} 
[2026-07-12 16:52:48] production.INFO: Product Store - Request Data {"all_data":{"_token":"xPXfFCTQb9KZxTOvL8qGF3cEdP43GDwstWqBoJBw","name":"Nifedipine Extended Release  20mg","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-12 16:52:48] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Nifedipine Extended Release  20mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-12 16:52:48] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Nifedipine Extended Release  20mg","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00992","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-12 16:52:48"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-12 16:52:48] production.INFO: Product Store - Product Created {"product_id":992,"product_name":"Nifedipine Extended Release  20mg","product_sku":"PRD-00992"} 
[2026-07-12 17:02:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783868536828","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":2,"subtotal":3000,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"18.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T08:05:11.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 17:02:18] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-07-12 17:02:18] production.INFO: Old stock: 18.00  
[2026-07-12 17:02:18] production.INFO: Quantity deducted: 2  
[2026-07-12 17:02:18] production.INFO: New stock: 16  
[2026-07-12 17:02:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783868536828"} 
[2026-07-12 17:22:15] production.INFO: Finalize sale attempt {"cart_items":7,"request_data":{"invoice_no":"INV-1783869734415","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"32.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-11T18:45:13.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":5,"subtotal":1000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"214.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T12:24:21.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":170,"product_id":170,"name":"Cevite Tablets 500mg 10x10T","sku":"0731","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":170,"name":"Cevite Tablets 500mg 10x10T","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"34.00","stock":"57.00","product_type":"Single","tax":null,"sku":"0731","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-01T17:49:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"12.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-11T08:01:28.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"232.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T18:16:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"66.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T12:47:32.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"1.00","stock":"117.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-12T08:48:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-12 17:22:16] production.INFO: Old stock: 32.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 1  
[2026-07-12 17:22:16] production.INFO: New stock: 31  
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-12 17:22:16] production.INFO: Old stock: 214.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 5  
[2026-07-12 17:22:16] production.INFO: New stock: 209  
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: Cevite Tablets 500mg 10x10T  
[2026-07-12 17:22:16] production.INFO: Old stock: 34.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 1  
[2026-07-12 17:22:16] production.INFO: New stock: 33  
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-07-12 17:22:16] production.INFO: Old stock: 12.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 1  
[2026-07-12 17:22:16] production.INFO: New stock: 11  
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-12 17:22:16] production.INFO: Old stock: 232.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 1  
[2026-07-12 17:22:16] production.INFO: New stock: 231  
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 17:22:16] production.INFO: Old stock: 66.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 1  
[2026-07-12 17:22:16] production.INFO: New stock: 65  
[2026-07-12 17:22:16] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-12 17:22:16] production.INFO: Old stock: 1.00  
[2026-07-12 17:22:16] production.INFO: Quantity deducted: 1  
[2026-07-12 17:22:16] production.INFO: New stock: 0  
[2026-07-12 17:22:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783869734415"} 
[2026-07-12 18:21:16] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783873275544","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":824,"product_id":824,"name":"Nifedipine Denk 20mg","sku":"PRD-00824","price":"10000.00","selling_price":"10000.00","purchase_price":"4900.00","quantity":2,"subtotal":20000,"product":{"id":824,"name":"Nifedipine Denk 20mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4900.00","last_purchase_price":"4900.00","selling_price":"10000.00","current_stock":"17.00","stock":"22.00","product_type":"Single","tax":null,"sku":"PRD-00824","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":"2026-03-24","created_at":"2026-03-24T08:48:47.000000Z","updated_at":"2026-07-02T17:30:57.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":2,"subtotal":6000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"5.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T09:26:05.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-12 18:21:16] production.INFO: Stock deduction for product: Nifedipine Denk 20mg  
[2026-07-12 18:21:16] production.INFO: Old stock: 17.00  
[2026-07-12 18:21:16] production.INFO: Quantity deducted: 2  
[2026-07-12 18:21:16] production.INFO: New stock: 15  
[2026-07-12 18:21:16] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-07-12 18:21:16] production.INFO: Old stock: 5.00  
[2026-07-12 18:21:16] production.INFO: Quantity deducted: 2  
[2026-07-12 18:21:16] production.INFO: New stock: 3  
[2026-07-12 18:21:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783873275544"} 
[2026-07-12 18:22:36] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783873355455","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"31.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-12T15:22:16.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":1,"subtotal":1500,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"72.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T08:51:07.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":3,"subtotal":1500,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"166.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T15:38:03.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 18:22:36] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-12 18:22:36] production.INFO: Old stock: 31.00  
[2026-07-12 18:22:36] production.INFO: Quantity deducted: 1  
[2026-07-12 18:22:36] production.INFO: New stock: 30  
[2026-07-12 18:22:36] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-07-12 18:22:36] production.INFO: Old stock: 72.00  
[2026-07-12 18:22:36] production.INFO: Quantity deducted: 1  
[2026-07-12 18:22:36] production.INFO: New stock: 71  
[2026-07-12 18:22:36] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-12 18:22:36] production.INFO: Old stock: 166.00  
[2026-07-12 18:22:36] production.INFO: Quantity deducted: 3  
[2026-07-12 18:22:36] production.INFO: New stock: 163  
[2026-07-12 18:22:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783873355455"} 
[2026-07-12 18:26:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783873575974","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":518,"product_id":518,"name":"LOFNAC MR Tablets","sku":"3155","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":518,"name":"LOFNAC MR Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"32.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3155","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T15:42:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 18:26:17] production.INFO: Stock deduction for product: LOFNAC MR Tablets  
[2026-07-12 18:26:17] production.INFO: Old stock: 32.00  
[2026-07-12 18:26:17] production.INFO: Quantity deducted: 1  
[2026-07-12 18:26:17] production.INFO: New stock: 31  
[2026-07-12 18:26:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783873575974"} 
[2026-07-12 18:45:54] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783874753945","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":862,"product_id":862,"name":"Omeprazole (OMZOLE)","sku":"PRD-00862","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":862,"name":"Omeprazole (OMZOLE)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00862","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-21","created_at":"2026-04-21T10:01:46.000000Z","updated_at":"2026-07-07T18:50:20.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"88.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T06:28:22.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"106.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T15:42:07.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-12 18:45:54] production.INFO: Stock deduction for product: Omeprazole (OMZOLE)  
[2026-07-12 18:45:54] production.INFO: Old stock: 2.00  
[2026-07-12 18:45:54] production.INFO: Quantity deducted: 1  
[2026-07-12 18:45:54] production.INFO: New stock: 1  
[2026-07-12 18:45:54] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-12 18:45:54] production.INFO: Old stock: 88.00  
[2026-07-12 18:45:54] production.INFO: Quantity deducted: 1  
[2026-07-12 18:45:54] production.INFO: New stock: 87  
[2026-07-12 18:45:54] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-12 18:45:54] production.INFO: Old stock: 106.00  
[2026-07-12 18:45:54] production.INFO: Quantity deducted: 1  
[2026-07-12 18:45:54] production.INFO: New stock: 105  
[2026-07-12 18:45:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783874753945"} 
[2026-07-12 18:47:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783874859848","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":926,"product_id":926,"name":"Parapain","sku":"PRD-00926","price":"400.00","selling_price":"400.00","purchase_price":"184.00","quantity":1,"subtotal":400,"product":{"id":926,"name":"Parapain","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","last_purchase_price":"184.00","selling_price":"400.00","current_stock":"39.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00926","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:57:23.000000Z","updated_at":"2026-07-03T18:41:07.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-12 18:47:41] production.INFO: Stock deduction for product: Parapain  
[2026-07-12 18:47:41] production.INFO: Old stock: 39.00  
[2026-07-12 18:47:41] production.INFO: Quantity deducted: 1  
[2026-07-12 18:47:41] production.INFO: New stock: 38  
[2026-07-12 18:47:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783874859848"} 
[2026-07-12 19:11:31] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783876290251","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":660,"product_id":660,"name":"Pyridoxine HCL (Vitamin B6)","sku":"3297","price":"1000.00","selling_price":"1000.00","purchase_price":"333.00","quantity":1,"subtotal":1000,"product":{"id":660,"name":"Pyridoxine HCL (Vitamin B6)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"7","brand_id":"7","supplier_id":null,"purchase_price":"333.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3297","image":null,"description":null,"alert_quantity":"3.00","expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-05-25T06:49:13.000000Z","brand":{"id":7,"name":"30MG","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":379,"product_id":379,"name":"FOLIC ACID 5MG (FOLIBEN)","sku":"3016","price":"600.00","selling_price":"600.00","purchase_price":"350.00","quantity":1,"subtotal":600,"product":{"id":379,"name":"FOLIC ACID 5MG (FOLIBEN)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"350.00","last_purchase_price":null,"selling_price":"600.00","current_stock":"94.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3016","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-27T17:13:10.000000Z","brand":null,"category":null}},{"id":755,"product_id":755,"name":"Vitamin B Complex","sku":"3392","price":"1000.00","selling_price":"1000.00","purchase_price":"242.00","quantity":1,"subtotal":1000,"product":{"id":755,"name":"Vitamin B Complex","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"242.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"42.00","stock":"42.00","product_type":"Single","tax":null,"sku":"3392","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-10","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-10T09:17:46.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-12 19:11:31] production.INFO: Stock deduction for product: Pyridoxine HCL (Vitamin B6)  
[2026-07-12 19:11:31] production.INFO: Old stock: 14.00  
[2026-07-12 19:11:31] production.INFO: Quantity deducted: 1  
[2026-07-12 19:11:31] production.INFO: New stock: 13  
[2026-07-12 19:11:31] production.INFO: Stock deduction for product: FOLIC ACID 5MG (FOLIBEN)  
[2026-07-12 19:11:31] production.INFO: Old stock: 94.00  
[2026-07-12 19:11:31] production.INFO: Quantity deducted: 1  
[2026-07-12 19:11:31] production.INFO: New stock: 93  
[2026-07-12 19:11:31] production.INFO: Stock deduction for product: Vitamin B Complex  
[2026-07-12 19:11:31] production.INFO: Old stock: 42.00  
[2026-07-12 19:11:31] production.INFO: Quantity deducted: 1  
[2026-07-12 19:11:31] production.INFO: New stock: 41  
[2026-07-12 19:11:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783876290251"} 
[2026-07-12 20:45:44] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783881943434","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"65.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T15:22:16.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"40.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T10:27:27.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"149.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-12T08:14:49.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 20:45:44] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-12 20:45:44] production.INFO: Old stock: 65.00  
[2026-07-12 20:45:44] production.INFO: Quantity deducted: 2  
[2026-07-12 20:45:44] production.INFO: New stock: 63  
[2026-07-12 20:45:44] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-12 20:45:44] production.INFO: Old stock: 40.00  
[2026-07-12 20:45:44] production.INFO: Quantity deducted: 1  
[2026-07-12 20:45:44] production.INFO: New stock: 39  
[2026-07-12 20:45:44] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-12 20:45:44] production.INFO: Old stock: 149.00  
[2026-07-12 20:45:44] production.INFO: Quantity deducted: 1  
[2026-07-12 20:45:44] production.INFO: New stock: 148  
[2026-07-12 20:45:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783881943434"} 
[2026-07-12 20:48:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783882113449","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":5,"subtotal":1500,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"231.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T15:22:16.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 20:48:33] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-12 20:48:33] production.INFO: Old stock: 231.00  
[2026-07-12 20:48:33] production.INFO: Quantity deducted: 5  
[2026-07-12 20:48:33] production.INFO: New stock: 226  
[2026-07-12 20:48:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783882113449"} 
[2026-07-12 20:49:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783882197465","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":4,"subtotal":800,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"209.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T15:22:16.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-12 20:49:58] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-12 20:49:58] production.INFO: Old stock: 209.00  
[2026-07-12 20:49:58] production.INFO: Quantity deducted: 4  
[2026-07-12 20:49:58] production.INFO: New stock: 205  
[2026-07-12 20:49:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783882197465"} 
[2026-07-13 07:54:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783922061914","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T13:58:55.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 07:54:23] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-07-13 07:54:23] production.INFO: Old stock: 48.00  
[2026-07-13 07:54:23] production.INFO: Quantity deducted: 1  
[2026-07-13 07:54:23] production.INFO: New stock: 47  
[2026-07-13 07:54:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783922061914"} 
[2026-07-13 08:09:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783922973639","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"10.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T11:07:52.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"39.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T18:45:44.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-13 08:09:35] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-13 08:09:35] production.INFO: Old stock: 10.00  
[2026-07-13 08:09:35] production.INFO: Quantity deducted: 1  
[2026-07-13 08:09:35] production.INFO: New stock: 9  
[2026-07-13 08:09:35] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-13 08:09:35] production.INFO: Old stock: 39.00  
[2026-07-13 08:09:35] production.INFO: Quantity deducted: 1  
[2026-07-13 08:09:35] production.INFO: New stock: 38  
[2026-07-13 08:09:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783922973639"} 
[2026-07-13 08:13:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783923230382","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"63.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T18:45:44.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-13 08:13:51] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-13 08:13:51] production.INFO: Old stock: 63.00  
[2026-07-13 08:13:51] production.INFO: Quantity deducted: 1  
[2026-07-13 08:13:51] production.INFO: New stock: 62  
[2026-07-13 08:13:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783923230382"} 
[2026-07-13 08:14:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783923275614","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"26.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-09T15:23:00.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 08:14:35] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-13 08:14:35] production.INFO: Old stock: 26.00  
[2026-07-13 08:14:35] production.INFO: Quantity deducted: 1  
[2026-07-13 08:14:35] production.INFO: New stock: 25  
[2026-07-13 08:14:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783923275614"} 
[2026-07-13 09:36:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783928178078","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":673,"product_id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","sku":"3310","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":673,"name":"RUFENAC GEL (Diclofenac gel), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"35","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3310","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T14:39:32.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-13 09:36:19] production.INFO: Stock deduction for product: RUFENAC GEL (Diclofenac gel), 30g  
[2026-07-13 09:36:19] production.INFO: Old stock: 1.00  
[2026-07-13 09:36:19] production.INFO: Quantity deducted: 1  
[2026-07-13 09:36:19] production.INFO: New stock: 0  
[2026-07-13 09:36:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783928178078"} 
[2026-07-13 10:43:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783932232857","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"8.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-11T12:47:00.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"5.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T08:56:54.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-13 10:43:54] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-13 10:43:54] production.INFO: Old stock: 8.00  
[2026-07-13 10:43:54] production.INFO: Quantity deducted: 1  
[2026-07-13 10:43:54] production.INFO: New stock: 7  
[2026-07-13 10:43:54] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-13 10:43:54] production.INFO: Old stock: 5.00  
[2026-07-13 10:43:54] production.INFO: Quantity deducted: 1  
[2026-07-13 10:43:54] production.INFO: New stock: 4  
[2026-07-13 10:43:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783932232857"} 
[2026-07-13 10:46:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783932401273","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":516,"product_id":516,"name":"LOFNAC GEL, 30g","sku":"3153","price":"7500.00","selling_price":"7500.00","purchase_price":"3650.00","quantity":2,"subtotal":15000,"product":{"id":516,"name":"LOFNAC GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"3650.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3153","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T12:09:12.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 10:46:42] production.INFO: Stock deduction for product: LOFNAC GEL, 30g  
[2026-07-13 10:46:42] production.INFO: Old stock: 7.00  
[2026-07-13 10:46:42] production.INFO: Quantity deducted: 2  
[2026-07-13 10:46:42] production.INFO: New stock: 5  
[2026-07-13 10:46:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783932401273"} 
[2026-07-13 12:12:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783937549481","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"15.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-09T19:47:09.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 12:12:30] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-07-13 12:12:30] production.INFO: Old stock: 15.00  
[2026-07-13 12:12:30] production.INFO: Quantity deducted: 1  
[2026-07-13 12:12:30] production.INFO: New stock: 14  
[2026-07-13 12:12:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783937549481"} 
[2026-07-13 12:23:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783938222614","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"62.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T06:13:51.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-13 12:23:43] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-13 12:23:43] production.INFO: Old stock: 62.00  
[2026-07-13 12:23:43] production.INFO: Quantity deducted: 1  
[2026-07-13 12:23:43] production.INFO: New stock: 61  
[2026-07-13 12:23:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783938222614"} 
[2026-07-13 13:10:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783941015446","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"60.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-26T17:55:27.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 13:10:16] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-07-13 13:10:16] production.INFO: Old stock: 60.00  
[2026-07-13 13:10:16] production.INFO: Quantity deducted: 1  
[2026-07-13 13:10:16] production.INFO: New stock: 59  
[2026-07-13 13:10:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783941015446"} 
[2026-07-13 14:33:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783945993326","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":446,"product_id":446,"name":"HILDERM-CH (Silver Sulfadiazine + Chitosan Cream), 30g","sku":"3083","price":"6500.00","selling_price":"6500.00","purchase_price":"3250.00","quantity":1,"subtotal":6500,"product":{"id":446,"name":"HILDERM-CH (Silver Sulfadiazine + Chitosan Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"3250.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3083","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-05-14T11:25:47.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":148,"product_id":148,"name":"CALAMINE LOTION 100ML","sku":"0716","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":148,"name":"CALAMINE LOTION 100ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4200.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"7.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0716","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-09T08:45:34.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":910,"product_id":910,"name":"Gantamycin Eye Drop (Getacin)","sku":"PRD-00910","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":910,"name":"Gantamycin Eye Drop (Getacin)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1200.00","last_purchase_price":"1200.00","selling_price":"2500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00910","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-18","created_at":"2026-06-18T14:57:58.000000Z","updated_at":"2026-06-30T16:24:26.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 14:33:15] production.INFO: Stock deduction for product: HILDERM-CH (Silver Sulfadiazine + Chitosan Cream), 30g  
[2026-07-13 14:33:15] production.INFO: Old stock: 7.00  
[2026-07-13 14:33:15] production.INFO: Quantity deducted: 1  
[2026-07-13 14:33:15] production.INFO: New stock: 6  
[2026-07-13 14:33:15] production.INFO: Stock deduction for product: CALAMINE LOTION 100ML  
[2026-07-13 14:33:15] production.INFO: Old stock: 7.00  
[2026-07-13 14:33:15] production.INFO: Quantity deducted: 1  
[2026-07-13 14:33:15] production.INFO: New stock: 6  
[2026-07-13 14:33:15] production.INFO: Stock deduction for product: Gantamycin Eye Drop (Getacin)  
[2026-07-13 14:33:15] production.INFO: Old stock: 8.00  
[2026-07-13 14:33:15] production.INFO: Quantity deducted: 1  
[2026-07-13 14:33:15] production.INFO: New stock: 7  
[2026-07-13 14:33:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783945993326"} 
[2026-07-13 15:21:58] production.INFO: Stock Adjustment - Initial State {"product_id":"625","previous_quantity":"0.00","previous_selling_price":"1000.00","validated_data":{"product_id":"625","adjustment_type":"add","quantity":"111","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-13"}} 
[2026-07-13 15:21:58] production.INFO: Stock Adjustment - After Quantity Save {"product_id":625,"new_quantity":111.0,"current_stock":111.0,"changes_made":"Quantity adjusted"} 
[2026-07-13 15:22:55] production.INFO: Stock Adjustment - Initial State {"product_id":"465","previous_quantity":"0.00","previous_selling_price":"1000.00","validated_data":{"product_id":"465","adjustment_type":"add","quantity":"55","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-13"}} 
[2026-07-13 15:22:55] production.INFO: Stock Adjustment - After Quantity Save {"product_id":465,"new_quantity":55.0,"current_stock":55.0,"changes_made":"Quantity adjusted"} 
[2026-07-13 15:23:58] production.INFO: Stock Adjustment - Initial State {"product_id":"467","previous_quantity":"19.00","previous_selling_price":"1000.00","validated_data":{"product_id":"467","adjustment_type":"add","quantity":"66","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-13"}} 
[2026-07-13 15:23:58] production.INFO: Stock Adjustment - After Quantity Save {"product_id":467,"new_quantity":85.0,"current_stock":85.0,"changes_made":"Quantity adjusted"} 
[2026-07-13 15:25:15] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783949114988","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":48,"product_id":48,"name":"ALCLOX-250 (Cloxacillin 250mg)","sku":"1116","price":"3000.00","selling_price":"3000.00","purchase_price":"1150.00","quantity":2,"subtotal":6000,"product":{"id":48,"name":"ALCLOX-250 (Cloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1150.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"1116","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-06","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-06T09:18:04.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":37,"product_id":37,"name":"ACYCLOVIR (DAVIR) CREAM","sku":"0664","price":"3000.00","selling_price":"3000.00","purchase_price":"1250.00","quantity":1,"subtotal":3000,"product":{"id":37,"name":"ACYCLOVIR (DAVIR) CREAM","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1250.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"19.00","stock":"23.00","product_type":"Single","tax":null,"sku":"0664","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-10T15:18:43.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":8000}]}} 
[2026-07-13 15:37:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783949840850","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"4000.00","selling_price":"4000.00","purchase_price":"1750.00","quantity":2,"subtotal":8000,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"4000.00","current_stock":"12.00","stock":"15.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-10","last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-07-03T14:32:31.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 15:37:24] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-07-13 15:37:24] production.INFO: Old stock: 12.00  
[2026-07-13 15:37:24] production.INFO: Quantity deducted: 2  
[2026-07-13 15:37:24] production.INFO: New stock: 10  
[2026-07-13 15:37:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783949840850"} 
[2026-07-13 15:37:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783949848401","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":874,"product_id":874,"name":"Cotton Wool 100g","sku":"PRD-00874","price":"4000.00","selling_price":"4000.00","purchase_price":"1750.00","quantity":2,"subtotal":8000,"product":{"id":874,"name":"Cotton Wool 100g","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"4000.00","current_stock":"12.00","stock":"15.00","product_type":"Single","tax":null,"sku":"PRD-00874","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-10","last_purchase_date":"2026-05-10","created_at":"2026-05-10T11:19:46.000000Z","updated_at":"2026-07-03T14:32:31.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 15:37:28] production.INFO: Stock deduction for product: Cotton Wool 100g  
[2026-07-13 15:37:28] production.INFO: Old stock: 10.00  
[2026-07-13 15:37:28] production.INFO: Quantity deducted: 2  
[2026-07-13 15:37:28] production.INFO: New stock: 8  
[2026-07-13 15:37:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783949848401"} 
[2026-07-13 16:03:42] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783951423666","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"28.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-03T15:53:41.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"111.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T13:21:58.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 16:03:42] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-07-13 16:03:42] production.INFO: Old stock: 28.00  
[2026-07-13 16:03:42] production.INFO: Quantity deducted: 1  
[2026-07-13 16:03:42] production.INFO: New stock: 27  
[2026-07-13 16:03:42] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-13 16:03:42] production.INFO: Old stock: 111.00  
[2026-07-13 16:03:42] production.INFO: Quantity deducted: 1  
[2026-07-13 16:03:42] production.INFO: New stock: 110  
[2026-07-13 16:03:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783951423666"} 
[2026-07-13 16:08:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783951685474","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"7.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-13T08:43:54.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 16:08:04] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-13 16:08:04] production.INFO: Old stock: 7.00  
[2026-07-13 16:08:04] production.INFO: Quantity deducted: 1  
[2026-07-13 16:08:04] production.INFO: New stock: 6  
[2026-07-13 16:08:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783951685474"} 
[2026-07-13 16:11:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783951898833","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":1,"subtotal":2000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-07-08T08:28:18.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 16:11:38] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-07-13 16:11:38] production.INFO: Old stock: 3.00  
[2026-07-13 16:11:38] production.INFO: Quantity deducted: 1  
[2026-07-13 16:11:38] production.INFO: New stock: 2  
[2026-07-13 16:11:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783951898833"} 
[2026-07-13 16:18:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783952305944","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-12T16:22:36.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 16:18:24] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-13 16:18:24] production.INFO: Old stock: 30.00  
[2026-07-13 16:18:24] production.INFO: Quantity deducted: 1  
[2026-07-13 16:18:24] production.INFO: New stock: 29  
[2026-07-13 16:18:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783952305944"} 
[2026-07-13 16:22:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783952579584","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4000.00","selling_price":"4000.00","purchase_price":"2409.00","quantity":1,"subtotal":4000,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"6.00","stock":"96.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-13T14:08:04.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 16:22:59] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-13 16:22:59] production.INFO: Old stock: 6.00  
[2026-07-13 16:22:59] production.INFO: Quantity deducted: 1  
[2026-07-13 16:22:59] production.INFO: New stock: 5  
[2026-07-13 16:22:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783952579584"} 
[2026-07-13 16:49:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783954191324","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":2,"subtotal":2000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"69.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-12T12:27:48.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 16:49:50] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-13 16:49:50] production.INFO: Old stock: 69.00  
[2026-07-13 16:49:50] production.INFO: Quantity deducted: 2  
[2026-07-13 16:49:50] production.INFO: New stock: 67  
[2026-07-13 16:49:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783954191324"} 
[2026-07-13 17:00:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783954854618","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"Back-up Emergency Pill","sku":"1066","price":"3500.00","selling_price":"3500.00","purchase_price":"1000.00","quantity":1,"subtotal":3500,"product":{"id":94,"name":"Back-up Emergency Pill","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"23.00","stock":"50.00","product_type":"Single","tax":null,"sku":"1066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-11T08:10:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 17:00:55] production.INFO: Stock deduction for product: Back-up Emergency Pill  
[2026-07-13 17:00:55] production.INFO: Old stock: 23.00  
[2026-07-13 17:00:55] production.INFO: Quantity deducted: 1  
[2026-07-13 17:00:55] production.INFO: New stock: 22  
[2026-07-13 17:00:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783954854618"} 
[2026-07-13 17:07:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783955267330","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"148.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-12T18:45:44.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 17:07:47] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-13 17:07:47] production.INFO: Old stock: 148.00  
[2026-07-13 17:07:47] production.INFO: Quantity deducted: 1  
[2026-07-13 17:07:47] production.INFO: New stock: 147  
[2026-07-13 17:07:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783955267330"} 
[2026-07-13 17:18:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783955918088","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":2,"subtotal":4000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"105.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T16:45:54.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 17:18:38] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-13 17:18:38] production.INFO: Old stock: 105.00  
[2026-07-13 17:18:38] production.INFO: Quantity deducted: 2  
[2026-07-13 17:18:38] production.INFO: New stock: 103  
[2026-07-13 17:18:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783955918088"} 
[2026-07-13 17:36:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783957000446","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"87.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-12T16:45:54.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-13 17:36:40] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-13 17:36:40] production.INFO: Old stock: 87.00  
[2026-07-13 17:36:40] production.INFO: Quantity deducted: 1  
[2026-07-13 17:36:40] production.INFO: New stock: 86  
[2026-07-13 17:36:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783957000446"} 
[2026-07-13 17:46:27] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1783957587220","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"44.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-01T18:23:16.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"110.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T14:03:42.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"205.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T18:49:57.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"226.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T18:48:33.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":6000},{"method":"airtel_money","amount":1000}]}} 
[2026-07-13 17:57:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783958228243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"21.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T16:27:49.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 17:57:07] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-07-13 17:57:07] production.INFO: Old stock: 21.00  
[2026-07-13 17:57:07] production.INFO: Quantity deducted: 1  
[2026-07-13 17:57:07] production.INFO: New stock: 20  
[2026-07-13 17:57:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783958228243"} 
[2026-07-13 18:00:35] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783958435378","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":767,"product_id":767,"name":"Xerin-Levocetirizine","sku":"3404","price":"3000.00","selling_price":"3000.00","purchase_price":"1550.00","quantity":3,"subtotal":9000,"product":{"id":767,"name":"Xerin-Levocetirizine","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1550.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"3.00","stock":"52.00","product_type":"Single","tax":null,"sku":"3404","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-20","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T16:21:16.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":389,"product_id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","sku":"3026","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3026","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-03T13:34:28.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 18:00:36] production.INFO: Stock deduction for product: Xerin-Levocetirizine  
[2026-07-13 18:00:36] production.INFO: Old stock: 3.00  
[2026-07-13 18:00:36] production.INFO: Quantity deducted: 3  
[2026-07-13 18:00:36] production.INFO: New stock: 0  
[2026-07-13 18:00:36] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 30g  
[2026-07-13 18:00:36] production.INFO: Old stock: 7.00  
[2026-07-13 18:00:36] production.INFO: Quantity deducted: 1  
[2026-07-13 18:00:36] production.INFO: New stock: 6  
[2026-07-13 18:00:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783958435378"} 
[2026-07-13 18:20:28] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783959628672","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":122,"product_id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","sku":"0708","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"19","supplier_id":null,"purchase_price":"2750.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0708","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-03T09:17:00.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":215,"product_id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","sku":"0742","price":"4000.00","selling_price":"4000.00","purchase_price":"1980.00","quantity":1,"subtotal":4000,"product":{"id":215,"name":"DAWACLOCX (Cloxacillin Oral 125mg/5ml)","business_location":"EDUC Pharmacy","unit_id":"19","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1980.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"2.00","stock":"5.00","product_type":"Single","tax":null,"sku":"0742","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-04T14:09:56.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 18:20:28] production.INFO: Stock deduction for product: BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g  
[2026-07-13 18:20:28] production.INFO: Old stock: 11.00  
[2026-07-13 18:20:28] production.INFO: Quantity deducted: 1  
[2026-07-13 18:20:28] production.INFO: New stock: 10  
[2026-07-13 18:20:28] production.INFO: Stock deduction for product: DAWACLOCX (Cloxacillin Oral 125mg/5ml)  
[2026-07-13 18:20:28] production.INFO: Old stock: 2.00  
[2026-07-13 18:20:28] production.INFO: Quantity deducted: 1  
[2026-07-13 18:20:28] production.INFO: New stock: 1  
[2026-07-13 18:20:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783959628672"} 
[2026-07-13 18:21:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783959664935","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":2,"subtotal":16000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"52.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-11T18:02:21.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"61.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T10:23:43.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 18:21:03] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-13 18:21:03] production.INFO: Old stock: 52.00  
[2026-07-13 18:21:03] production.INFO: Quantity deducted: 2  
[2026-07-13 18:21:03] production.INFO: New stock: 50  
[2026-07-13 18:21:03] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-13 18:21:03] production.INFO: Old stock: 61.00  
[2026-07-13 18:21:03] production.INFO: Quantity deducted: 1  
[2026-07-13 18:21:03] production.INFO: New stock: 60  
[2026-07-13 18:21:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783959664935"} 
[2026-07-13 18:21:27] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783959688471","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":2,"subtotal":4000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"29.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-13T14:18:24.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":632,"product_id":632,"name":"Phenobarbitone 30 mg","sku":"3269","price":"2500.00","selling_price":"2500.00","purchase_price":"1197.00","quantity":1,"subtotal":2500,"product":{"id":632,"name":"Phenobarbitone 30 mg","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"1197.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"38.00","stock":"49.00","product_type":"Single","tax":null,"sku":"3269","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-10","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-07T16:18:42.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 18:21:27] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-13 18:21:27] production.INFO: Old stock: 29.00  
[2026-07-13 18:21:27] production.INFO: Quantity deducted: 2  
[2026-07-13 18:21:27] production.INFO: New stock: 27  
[2026-07-13 18:21:27] production.INFO: Stock deduction for product: Phenobarbitone 30 mg  
[2026-07-13 18:21:27] production.INFO: Old stock: 38.00  
[2026-07-13 18:21:27] production.INFO: Quantity deducted: 1  
[2026-07-13 18:21:27] production.INFO: New stock: 37  
[2026-07-13 18:21:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783959688471"} 
[2026-07-13 18:21:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783959711239","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":3,"subtotal":600,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"204.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T15:46:27.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 18:21:50] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-13 18:21:50] production.INFO: Old stock: 204.00  
[2026-07-13 18:21:50] production.INFO: Quantity deducted: 3  
[2026-07-13 18:21:50] production.INFO: New stock: 201  
[2026-07-13 18:21:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783959711239"} 
[2026-07-13 19:00:31] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783962030176","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":770,"product_id":770,"name":"Xonase Adult Drop (Xylometazoline 0.1%)","sku":"3407","price":"8500.00","selling_price":"8500.00","purchase_price":"3950.00","quantity":1,"subtotal":8500,"product":{"id":770,"name":"Xonase Adult Drop (Xylometazoline 0.1%)","business_location":"EDUC Pharmacy","unit_id":"31","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3407","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-22T14:38:35.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":836,"product_id":836,"name":"Cetrizine 10mg (Oncet)","sku":"PRD-00836","price":"1500.00","selling_price":"1500.00","purchase_price":"475.00","quantity":1,"subtotal":1500,"product":{"id":836,"name":"Cetrizine 10mg (Oncet)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1500.00","current_stock":"15.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00836","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":"2026-04-15","created_at":"2026-04-15T10:53:30.000000Z","updated_at":"2026-07-05T16:22:26.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"85.00","stock":"85.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T13:23:58.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 19:00:31] production.INFO: Stock deduction for product: Xonase Adult Drop (Xylometazoline 0.1%)  
[2026-07-13 19:00:31] production.INFO: Old stock: 10.00  
[2026-07-13 19:00:31] production.INFO: Quantity deducted: 1  
[2026-07-13 19:00:31] production.INFO: New stock: 9  
[2026-07-13 19:00:31] production.INFO: Stock deduction for product: Cetrizine 10mg (Oncet)  
[2026-07-13 19:00:31] production.INFO: Old stock: 15.00  
[2026-07-13 19:00:31] production.INFO: Quantity deducted: 1  
[2026-07-13 19:00:31] production.INFO: New stock: 14  
[2026-07-13 19:00:31] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-13 19:00:31] production.INFO: Old stock: 85.00  
[2026-07-13 19:00:31] production.INFO: Quantity deducted: 1  
[2026-07-13 19:00:31] production.INFO: New stock: 84  
[2026-07-13 19:00:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783962030176"} 
[2026-07-13 19:00:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783962046160","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"26.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T16:22:42.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"cash"}} 
[2026-07-13 19:00:47] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-07-13 19:00:47] production.INFO: Old stock: 26.00  
[2026-07-13 19:00:47] production.INFO: Quantity deducted: 1  
[2026-07-13 19:00:47] production.INFO: New stock: 25  
[2026-07-13 19:00:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783962046160"} 
[2026-07-13 19:02:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783962119257","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":888,"product_id":888,"name":"Eno fruit salt","sku":"PRD-00888","price":"4500.00","selling_price":"4500.00","purchase_price":"2100.00","quantity":1,"subtotal":4500,"product":{"id":888,"name":"Eno fruit salt","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"2100.00","last_purchase_price":"2100.00","selling_price":"4500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00888","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-05-26","created_at":"2026-05-26T07:41:42.000000Z","updated_at":"2026-07-09T12:56:48.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 19:02:04] production.INFO: Stock deduction for product: Eno fruit salt  
[2026-07-13 19:02:04] production.INFO: Old stock: 11.00  
[2026-07-13 19:02:04] production.INFO: Quantity deducted: 1  
[2026-07-13 19:02:04] production.INFO: New stock: 10  
[2026-07-13 19:02:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783962119257"} 
[2026-07-13 19:08:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783962528212","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":2,"subtotal":1000,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"35.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-12T12:35:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 19:08:51] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-07-13 19:08:51] production.INFO: Old stock: 35.00  
[2026-07-13 19:08:51] production.INFO: Quantity deducted: 2  
[2026-07-13 19:08:51] production.INFO: New stock: 33  
[2026-07-13 19:08:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783962528212"} 
[2026-07-13 19:08:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783962534187","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":255,"product_id":255,"name":"DISPOSABLE SYRINGE 5ML","sku":"0784","price":"500.00","selling_price":"500.00","purchase_price":"178.00","quantity":2,"subtotal":1000,"product":{"id":255,"name":"DISPOSABLE SYRINGE 5ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"178.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"35.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0784","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-12T12:35:08.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 19:08:54] production.INFO: Stock deduction for product: DISPOSABLE SYRINGE 5ML  
[2026-07-13 19:08:54] production.INFO: Old stock: 33.00  
[2026-07-13 19:08:54] production.INFO: Quantity deducted: 2  
[2026-07-13 19:08:54] production.INFO: New stock: 31  
[2026-07-13 19:08:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783962534187"} 
[2026-07-13 19:35:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783964109622","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"60.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T16:21:03.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-13 19:35:09] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-13 19:35:09] production.INFO: Old stock: 60.00  
[2026-07-13 19:35:09] production.INFO: Quantity deducted: 1  
[2026-07-13 19:35:09] production.INFO: New stock: 59  
[2026-07-13 19:35:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783964109622"} 
[2026-07-13 19:35:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783964126854","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"26.00","stock":"26.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-12T14:09:12.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 19:35:26] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-13 19:35:26] production.INFO: Old stock: 26.00  
[2026-07-13 19:35:26] production.INFO: Quantity deducted: 1  
[2026-07-13 19:35:26] production.INFO: New stock: 25  
[2026-07-13 19:35:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783964126854"} 
[2026-07-13 19:56:56] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783965415659","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"86.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T15:36:40.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":388,"product_id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","sku":"3025","price":"3000.00","selling_price":"3000.00","purchase_price":"1450.00","quantity":1,"subtotal":3000,"product":{"id":388,"name":"FUNBACT-A (Triple Action Cream), 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"1450.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"15.00","stock":"18.00","product_type":"Single","tax":null,"sku":"3025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T14:10:49.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 19:56:56] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-13 19:56:56] production.INFO: Old stock: 86.00  
[2026-07-13 19:56:56] production.INFO: Quantity deducted: 1  
[2026-07-13 19:56:56] production.INFO: New stock: 85  
[2026-07-13 19:56:56] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 15g  
[2026-07-13 19:56:56] production.INFO: Old stock: 15.00  
[2026-07-13 19:56:56] production.INFO: Quantity deducted: 1  
[2026-07-13 19:56:56] production.INFO: New stock: 14  
[2026-07-13 19:56:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783965415659"} 
[2026-07-13 20:00:41] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1783965640795","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":3,"subtotal":3000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"24.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-11T15:33:08.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"85.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T17:56:56.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"59.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T17:35:09.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 20:00:41] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-07-13 20:00:41] production.INFO: Old stock: 24.00  
[2026-07-13 20:00:41] production.INFO: Quantity deducted: 3  
[2026-07-13 20:00:41] production.INFO: New stock: 21  
[2026-07-13 20:00:41] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-13 20:00:41] production.INFO: Old stock: 85.00  
[2026-07-13 20:00:41] production.INFO: Quantity deducted: 1  
[2026-07-13 20:00:41] production.INFO: New stock: 84  
[2026-07-13 20:00:41] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-13 20:00:41] production.INFO: Old stock: 59.00  
[2026-07-13 20:00:41] production.INFO: Quantity deducted: 1  
[2026-07-13 20:00:41] production.INFO: New stock: 58  
[2026-07-13 20:00:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783965640795"} 
[2026-07-13 20:32:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783967553151","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":734,"product_id":734,"name":"Triphen Dry","sku":"3371","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":734,"name":"Triphen Dry","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"1.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3371","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-26","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T15:55:54.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"109.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T15:46:27.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 20:32:33] production.INFO: Stock deduction for product: Triphen Dry  
[2026-07-13 20:32:33] production.INFO: Old stock: 1.00  
[2026-07-13 20:32:33] production.INFO: Quantity deducted: 1  
[2026-07-13 20:32:33] production.INFO: New stock: 0  
[2026-07-13 20:32:33] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-13 20:32:33] production.INFO: Old stock: 109.00  
[2026-07-13 20:32:33] production.INFO: Quantity deducted: 1  
[2026-07-13 20:32:33] production.INFO: New stock: 108  
[2026-07-13 20:32:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783967553151"} 
[2026-07-13 20:42:17] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1783968137214","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":556,"product_id":556,"name":"METHYLATED SPIRIT 500ML","sku":"3193","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":556,"name":"METHYLATED SPIRIT 500ML","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"3193","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-08","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-05-08T09:19:04.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":10,"subtotal":8000,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"90.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T11:20:13.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"airtel_money","amount":21000},{"method":"cash","amount":2000}]}} 
[2026-07-13 20:45:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783968332878","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"146.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T13:25:42.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 20:45:32] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-13 20:45:32] production.INFO: Old stock: 146.00  
[2026-07-13 20:45:32] production.INFO: Quantity deducted: 5  
[2026-07-13 20:45:32] production.INFO: New stock: 141  
[2026-07-13 20:45:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783968332878"} 
[2026-07-13 20:54:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783968874077","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"108.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T18:32:33.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 20:54:33] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-13 20:54:33] production.INFO: Old stock: 108.00  
[2026-07-13 20:54:33] production.INFO: Quantity deducted: 2  
[2026-07-13 20:54:33] production.INFO: New stock: 106  
[2026-07-13 20:54:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783968874077"} 
[2026-07-13 20:56:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783968977629","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"84.00","stock":"85.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T18:53:22.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 20:56:16] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-13 20:56:16] production.INFO: Old stock: 84.00  
[2026-07-13 20:56:16] production.INFO: Quantity deducted: 1  
[2026-07-13 20:56:16] production.INFO: New stock: 83  
[2026-07-13 20:56:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783968977629"} 
[2026-07-13 20:56:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1783969014412","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":3,"subtotal":600,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"201.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T16:21:50.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-13 20:56:53] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-13 20:56:53] production.INFO: Old stock: 201.00  
[2026-07-13 20:56:53] production.INFO: Quantity deducted: 3  
[2026-07-13 20:56:53] production.INFO: New stock: 198  
[2026-07-13 20:56:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1783969014412"} 
[2026-07-14 08:18:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784009912273","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"59.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T11:10:16.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"58.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T18:00:41.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-14 08:18:31] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-07-14 08:18:31] production.INFO: Old stock: 59.00  
[2026-07-14 08:18:31] production.INFO: Quantity deducted: 1  
[2026-07-14 08:18:31] production.INFO: New stock: 58  
[2026-07-14 08:18:31] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-14 08:18:31] production.INFO: Old stock: 58.00  
[2026-07-14 08:18:31] production.INFO: Quantity deducted: 1  
[2026-07-14 08:18:31] production.INFO: New stock: 57  
[2026-07-14 08:18:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784009912273"} 
[2026-07-14 08:28:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784010530495","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":981,"product_id":981,"name":"Latex Examination Powdered Gloves M.V","sku":"PRD-00981","price":"800.00","selling_price":"800.00","purchase_price":"400.00","quantity":2,"subtotal":1600,"product":{"id":981,"name":"Latex Examination Powdered Gloves M.V","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"400.00","last_purchase_price":"400.00","selling_price":"800.00","current_stock":"250.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00981","image":null,"description":null,"alert_quantity":"20.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T15:24:01.000000Z","updated_at":"2026-07-03T15:24:01.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 08:28:48] production.INFO: Stock deduction for product: Latex Examination Powdered Gloves M.V  
[2026-07-14 08:28:48] production.INFO: Old stock: 250.00  
[2026-07-14 08:28:48] production.INFO: Quantity deducted: 2  
[2026-07-14 08:28:48] production.INFO: New stock: 248  
[2026-07-14 08:28:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784010530495"} 
[2026-07-14 08:58:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784012280231","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"27.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-13T16:21:27.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 08:58:00] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-14 08:58:00] production.INFO: Old stock: 27.00  
[2026-07-14 08:58:00] production.INFO: Quantity deducted: 1  
[2026-07-14 08:58:00] production.INFO: New stock: 26  
[2026-07-14 08:58:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784012280231"} 
[2026-07-14 09:11:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784013111572","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"57.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T06:18:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 09:11:51] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-14 09:11:51] production.INFO: Old stock: 57.00  
[2026-07-14 09:11:51] production.INFO: Quantity deducted: 1  
[2026-07-14 09:11:51] production.INFO: New stock: 56  
[2026-07-14 09:11:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784013111572"} 
[2026-07-14 09:48:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784015322819","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":389,"product_id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","sku":"3026","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":389,"name":"FUNBACT-A (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"23","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"6.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3026","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T16:00:36.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 09:48:42] production.INFO: Stock deduction for product: FUNBACT-A (Triple Action Cream), 30g  
[2026-07-14 09:48:42] production.INFO: Old stock: 6.00  
[2026-07-14 09:48:42] production.INFO: Quantity deducted: 1  
[2026-07-14 09:48:42] production.INFO: New stock: 5  
[2026-07-14 09:48:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784015322819"} 
[2026-07-14 10:29:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784017744761","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"103.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T15:18:38.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 10:29:03] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-14 10:29:03] production.INFO: Old stock: 103.00  
[2026-07-14 10:29:03] production.INFO: Quantity deducted: 1  
[2026-07-14 10:29:03] production.INFO: New stock: 102  
[2026-07-14 10:29:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784017744761"} 
[2026-07-14 10:33:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784017982136","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"38.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T06:09:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 10:33:00] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-14 10:33:00] production.INFO: Old stock: 38.00  
[2026-07-14 10:33:00] production.INFO: Quantity deducted: 1  
[2026-07-14 10:33:00] production.INFO: New stock: 37  
[2026-07-14 10:33:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784017982136"} 
[2026-07-14 11:04:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784019883585","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":3,"subtotal":6000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"102.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T08:29:03.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 11:04:43] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-14 11:04:43] production.INFO: Old stock: 102.00  
[2026-07-14 11:04:43] production.INFO: Quantity deducted: 3  
[2026-07-14 11:04:43] production.INFO: New stock: 99  
[2026-07-14 11:04:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784019883585"} 
[2026-07-14 11:14:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784020479950","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":926,"product_id":926,"name":"Parapain","sku":"PRD-00926","price":"400.00","selling_price":"400.00","purchase_price":"184.00","quantity":1,"subtotal":400,"product":{"id":926,"name":"Parapain","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","last_purchase_price":"184.00","selling_price":"400.00","current_stock":"38.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00926","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:57:23.000000Z","updated_at":"2026-07-12T16:47:41.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 11:14:39] production.INFO: Stock deduction for product: Parapain  
[2026-07-14 11:14:39] production.INFO: Old stock: 38.00  
[2026-07-14 11:14:39] production.INFO: Quantity deducted: 1  
[2026-07-14 11:14:39] production.INFO: New stock: 37  
[2026-07-14 11:14:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784020479950"} 
[2026-07-14 11:38:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784021907944","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"4.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T08:43:54.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 11:38:27] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-14 11:38:27] production.INFO: Old stock: 4.00  
[2026-07-14 11:38:27] production.INFO: Quantity deducted: 1  
[2026-07-14 11:38:27] production.INFO: New stock: 3  
[2026-07-14 11:38:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784021907944"} 
[2026-07-14 11:57:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784023050827","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"56.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T07:11:51.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 11:57:31] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-14 11:57:31] production.INFO: Old stock: 56.00  
[2026-07-14 11:57:31] production.INFO: Quantity deducted: 1  
[2026-07-14 11:57:31] production.INFO: New stock: 55  
[2026-07-14 11:57:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784023050827"} 
[2026-07-14 12:13:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784024019567","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":100,"product_id":100,"name":"BECLOMIN CREAM, 30g","sku":"0696","price":"5500.00","selling_price":"5500.00","purchase_price":"2450.00","quantity":1,"subtotal":5500,"product":{"id":100,"name":"BECLOMIN CREAM, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0696","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-10T18:05:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-14 12:13:38] production.INFO: Stock deduction for product: BECLOMIN CREAM, 30g  
[2026-07-14 12:13:38] production.INFO: Old stock: 6.00  
[2026-07-14 12:13:38] production.INFO: Quantity deducted: 1  
[2026-07-14 12:13:38] production.INFO: New stock: 5  
[2026-07-14 12:13:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784024019567"} 
[2026-07-14 12:47:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784026072079","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":2,"subtotal":6000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"25.00","stock":"26.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-13T17:35:26.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 12:47:50] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-14 12:47:50] production.INFO: Old stock: 25.00  
[2026-07-14 12:47:50] production.INFO: Quantity deducted: 2  
[2026-07-14 12:47:50] production.INFO: New stock: 23  
[2026-07-14 12:47:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784026072079"} 
[2026-07-14 14:04:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784030677372","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":174,"product_id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","sku":"0733","price":"500.00","selling_price":"500.00","purchase_price":"70.00","quantity":1,"subtotal":500,"product":{"id":174,"name":"CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)","business_location":"EDUC Pharmacy","unit_id":"45","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"70.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"22.00","stock":"106.00","product_type":"Single","tax":null,"sku":"0733","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-03-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-10T14:42:35.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 14:04:36] production.INFO: Stock deduction for product: CHLORPHENIRAMINE (PILITON) 4MG(Pack of 15 Tablets)  
[2026-07-14 14:04:36] production.INFO: Old stock: 22.00  
[2026-07-14 14:04:36] production.INFO: Quantity deducted: 1  
[2026-07-14 14:04:36] production.INFO: New stock: 21  
[2026-07-14 14:04:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784030677372"} 
[2026-07-14 14:08:37] production.INFO: Stock Adjustment - Initial State {"product_id":"885","previous_quantity":"2.00","previous_selling_price":"22000.00","validated_data":{"product_id":"885","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 14:08:37] production.INFO: Stock Adjustment - After Quantity Save {"product_id":885,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 14:09:06] production.INFO: Stock Adjustment - Initial State {"product_id":"734","previous_quantity":"0.00","previous_selling_price":"16000.00","validated_data":{"product_id":"734","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 14:09:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":734,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 14:17:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784031458504","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"154.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-11T13:18:59.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 14:17:37] production.INFO: Stock deduction for product: HEDAX  
[2026-07-14 14:17:37] production.INFO: Old stock: 154.00  
[2026-07-14 14:17:37] production.INFO: Quantity deducted: 5  
[2026-07-14 14:17:37] production.INFO: New stock: 149  
[2026-07-14 14:17:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784031458504"} 
[2026-07-14 15:02:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784034154998","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":981,"product_id":981,"name":"Latex Examination Powdered Gloves M.V","sku":"PRD-00981","price":"800.00","selling_price":"800.00","purchase_price":"400.00","quantity":1,"subtotal":800,"product":{"id":981,"name":"Latex Examination Powdered Gloves M.V","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"400.00","last_purchase_price":"400.00","selling_price":"800.00","current_stock":"248.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00981","image":null,"description":null,"alert_quantity":"20.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T15:24:01.000000Z","updated_at":"2026-07-14T06:28:48.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:02:34] production.INFO: Stock deduction for product: Latex Examination Powdered Gloves M.V  
[2026-07-14 15:02:34] production.INFO: Old stock: 248.00  
[2026-07-14 15:02:34] production.INFO: Quantity deducted: 1  
[2026-07-14 15:02:34] production.INFO: New stock: 247  
[2026-07-14 15:02:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784034154998"} 
[2026-07-14 15:22:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784035340905","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"60.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-09T14:54:15.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:22:19] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-14 15:22:19] production.INFO: Old stock: 60.00  
[2026-07-14 15:22:19] production.INFO: Quantity deducted: 1  
[2026-07-14 15:22:19] production.INFO: New stock: 59  
[2026-07-14 15:22:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784035340905"} 
[2026-07-14 15:31:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784035907599","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Bottled Water (500 ml)","sku":"1322","price":"700.00","selling_price":"700.00","purchase_price":"550.00","quantity":1,"subtotal":700,"product":{"id":137,"name":"Bottled Water (500 ml)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"550.00","last_purchase_price":null,"selling_price":"700.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"1322","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-06","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-12T15:22:16.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:31:45] production.INFO: Stock deduction for product: Bottled Water (500 ml)  
[2026-07-14 15:31:45] production.INFO: Old stock: 11.00  
[2026-07-14 15:31:45] production.INFO: Quantity deducted: 1  
[2026-07-14 15:31:45] production.INFO: New stock: 10  
[2026-07-14 15:31:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784035907599"} 
[2026-07-14 15:32:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784035930734","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"198.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T18:56:53.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:32:08] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-14 15:32:08] production.INFO: Old stock: 198.00  
[2026-07-14 15:32:08] production.INFO: Quantity deducted: 1  
[2026-07-14 15:32:08] production.INFO: New stock: 197  
[2026-07-14 15:32:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784035930734"} 
[2026-07-14 15:32:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784035950294","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"225.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T15:46:27.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:32:28] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-14 15:32:28] production.INFO: Old stock: 225.00  
[2026-07-14 15:32:28] production.INFO: Quantity deducted: 1  
[2026-07-14 15:32:28] production.INFO: New stock: 224  
[2026-07-14 15:32:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784035950294"} 
[2026-07-14 15:35:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784036103302","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":99,"product_id":99,"name":"BECLOMIN CREAM, 15g","sku":"0695","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":99,"name":"BECLOMIN CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"19.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0695","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-11T13:54:50.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:35:01] production.INFO: Stock deduction for product: BECLOMIN CREAM, 15g  
[2026-07-14 15:35:01] production.INFO: Old stock: 19.00  
[2026-07-14 15:35:01] production.INFO: Quantity deducted: 1  
[2026-07-14 15:35:01] production.INFO: New stock: 18  
[2026-07-14 15:35:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784036103302"} 
[2026-07-14 15:40:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784036431213","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"89.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T10:09:07.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-14 15:40:29] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-14 15:40:29] production.INFO: Old stock: 89.00  
[2026-07-14 15:40:29] production.INFO: Quantity deducted: 1  
[2026-07-14 15:40:29] production.INFO: New stock: 88  
[2026-07-14 15:40:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784036431213"} 
[2026-07-14 15:43:31] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784036612851","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":1,"subtotal":2000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-07-13T14:11:38.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"60.00","stock":"62.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-01T18:24:29.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 15:43:32] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-07-14 15:43:32] production.INFO: Old stock: 2.00  
[2026-07-14 15:43:32] production.INFO: Quantity deducted: 1  
[2026-07-14 15:43:32] production.INFO: New stock: 1  
[2026-07-14 15:43:32] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-07-14 15:43:32] production.INFO: Old stock: 60.00  
[2026-07-14 15:43:32] production.INFO: Quantity deducted: 1  
[2026-07-14 15:43:32] production.INFO: New stock: 59  
[2026-07-14 15:43:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784036612851"} 
[2026-07-14 15:47:21] production.INFO: Stock Adjustment - Initial State {"product_id":"267","previous_quantity":"3.00","previous_selling_price":"14000.00","validated_data":{"product_id":"267","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:47:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":267,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:48:06] production.INFO: Stock Adjustment - Initial State {"product_id":"28","previous_quantity":"3.00","previous_selling_price":"10000.00","validated_data":{"product_id":"28","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:48:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":28,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:48:32] production.INFO: Stock Adjustment - Initial State {"product_id":"199","previous_quantity":"3.00","previous_selling_price":"7000.00","validated_data":{"product_id":"199","adjustment_type":"add","quantity":"15","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:48:32] production.INFO: Stock Adjustment - After Quantity Save {"product_id":199,"new_quantity":18.0,"current_stock":18.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:50:31] production.INFO: Stock Adjustment - Initial State {"product_id":"232","previous_quantity":"1.00","previous_selling_price":"7000.00","validated_data":{"product_id":"232","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:50:31] production.INFO: Stock Adjustment - After Quantity Save {"product_id":232,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:53:12] production.INFO: Stock Adjustment - Initial State {"product_id":"606","previous_quantity":"30.00","previous_selling_price":"1000.00","validated_data":{"product_id":"606","adjustment_type":"add","quantity":"40","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:53:12] production.INFO: Stock Adjustment - After Quantity Save {"product_id":606,"new_quantity":70.0,"current_stock":70.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:54:38] production.INFO: Stock Adjustment - Initial State {"product_id":"677","previous_quantity":"34.00","previous_selling_price":"1000.00","validated_data":{"product_id":"677","adjustment_type":"add","quantity":"33","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:54:38] production.INFO: Stock Adjustment - After Quantity Save {"product_id":677,"new_quantity":67.0,"current_stock":67.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:55:59] production.INFO: Stock Adjustment - Initial State {"product_id":"84","previous_quantity":"161.00","previous_selling_price":"1000.00","validated_data":{"product_id":"84","adjustment_type":"add","quantity":"55","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:55:59] production.INFO: Stock Adjustment - After Quantity Save {"product_id":84,"new_quantity":216.0,"current_stock":216.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:56:37] production.INFO: Stock Adjustment - Initial State {"product_id":"405","previous_quantity":"1.00","previous_selling_price":"50000.00","validated_data":{"product_id":"405","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:56:37] production.INFO: Stock Adjustment - After Quantity Save {"product_id":405,"new_quantity":3.0,"current_stock":3.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:56:54] production.INFO: Stock Adjustment - Initial State {"product_id":"616","previous_quantity":"3.00","previous_selling_price":"1000.00","validated_data":{"product_id":"616","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:56:54] production.INFO: Stock Adjustment - After Quantity Save {"product_id":616,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:58:29] production.INFO: Stock Adjustment - Initial State {"product_id":"417","previous_quantity":"15.00","previous_selling_price":"1000.00","validated_data":{"product_id":"417","adjustment_type":"add","quantity":"33","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:58:29] production.INFO: Stock Adjustment - After Quantity Save {"product_id":417,"new_quantity":48.0,"current_stock":48.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 15:59:41] production.INFO: Stock Adjustment - Initial State {"product_id":"800","previous_quantity":"80.00","previous_selling_price":"2000.00","validated_data":{"product_id":"800","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":"3000.00","new_purchase_price":"1500.00","new_expiry_date":"2026-07-14"}} 
[2026-07-14 15:59:41] production.INFO: Stock Adjustment - After Quantity Save {"product_id":800,"new_quantity":130.0,"current_stock":130.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 16:00:41] production.INFO: Stock Adjustment - Initial State {"product_id":"68","previous_quantity":"0.00","previous_selling_price":"5000.00","validated_data":{"product_id":"68","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"5500.00","new_purchase_price":"2800.00","new_expiry_date":"2026-07-14"}} 
[2026-07-14 16:00:41] production.INFO: Stock Adjustment - After Quantity Save {"product_id":68,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 16:02:42] production.INFO: Stock Adjustment - Initial State {"product_id":"67","previous_quantity":"5.00","previous_selling_price":"4000.00","validated_data":{"product_id":"67","adjustment_type":"add","quantity":"33","reason":"new_stock","new_selling_price":"4500.00","new_purchase_price":null,"new_expiry_date":"2026-07-14"}} 
[2026-07-14 16:02:42] production.INFO: Stock Adjustment - After Quantity Save {"product_id":67,"new_quantity":38.0,"current_stock":38.0,"changes_made":"Quantity adjusted"} 
[2026-07-14 16:24:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784039071847","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"BALGYL SYRUP (Metronidazole Oral Suspension)","sku":"0900","price":"4500.00","selling_price":"4500.00","purchase_price":"2150.00","quantity":1,"subtotal":4500,"product":{"id":96,"name":"BALGYL SYRUP (Metronidazole Oral Suspension)","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"14","supplier_id":null,"purchase_price":"2150.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0900","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-03-12T05:32:50.000000Z","brand":{"id":14,"name":"BAL PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":455,"product_id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","sku":"3092","price":"1500.00","selling_price":"1500.00","purchase_price":"400.00","quantity":1,"subtotal":1500,"product":{"id":455,"name":"HYDROCHLORTHIAZIDE (HCTZ) 25MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"58.00","stock":"66.00","product_type":"Single","tax":null,"sku":"3092","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T06:18:31.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-14 16:24:33] production.INFO: Stock deduction for product: BALGYL SYRUP (Metronidazole Oral Suspension)  
[2026-07-14 16:24:33] production.INFO: Old stock: 2.00  
[2026-07-14 16:24:33] production.INFO: Quantity deducted: 1  
[2026-07-14 16:24:33] production.INFO: New stock: 1  
[2026-07-14 16:24:33] production.INFO: Stock deduction for product: HYDROCHLORTHIAZIDE (HCTZ) 25MG  
[2026-07-14 16:24:33] production.INFO: Old stock: 58.00  
[2026-07-14 16:24:33] production.INFO: Quantity deducted: 1  
[2026-07-14 16:24:33] production.INFO: New stock: 57  
[2026-07-14 16:24:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784039071847"} 
[2026-07-14 16:26:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784039196486","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4500.00","selling_price":"4500.00","purchase_price":"2409.00","quantity":1,"subtotal":4500,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"38.00","stock":"38.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-14T14:02:42.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"3.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-14T09:38:27.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 16:26:37] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-14 16:26:37] production.INFO: Old stock: 38.00  
[2026-07-14 16:26:37] production.INFO: Quantity deducted: 1  
[2026-07-14 16:26:37] production.INFO: New stock: 37  
[2026-07-14 16:26:37] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-14 16:26:37] production.INFO: Old stock: 3.00  
[2026-07-14 16:26:37] production.INFO: Quantity deducted: 1  
[2026-07-14 16:26:37] production.INFO: New stock: 2  
[2026-07-14 16:26:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784039196486"} 
[2026-07-14 16:33:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784039633309","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":800,"product_id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","sku":"0754","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":800,"name":"COTRIMOXAZOLE 480MG(BACTRIM)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"130.00","stock":"130.00","product_type":"Single","tax":null,"sku":"0754","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-14T13:59:41.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"37.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T08:33:00.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 16:33:54] production.INFO: Stock deduction for product: COTRIMOXAZOLE 480MG(BACTRIM)  
[2026-07-14 16:33:54] production.INFO: Old stock: 130.00  
[2026-07-14 16:33:54] production.INFO: Quantity deducted: 1  
[2026-07-14 16:33:54] production.INFO: New stock: 129  
[2026-07-14 16:33:54] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-14 16:33:54] production.INFO: Old stock: 37.00  
[2026-07-14 16:33:54] production.INFO: Quantity deducted: 1  
[2026-07-14 16:33:54] production.INFO: New stock: 36  
[2026-07-14 16:33:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784039633309"} 
[2026-07-14 16:37:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784039858636","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"216.00","stock":"216.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-14T13:55:59.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 16:37:40] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-07-14 16:37:40] production.INFO: Old stock: 216.00  
[2026-07-14 16:37:40] production.INFO: Quantity deducted: 1  
[2026-07-14 16:37:40] production.INFO: New stock: 215  
[2026-07-14 16:37:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784039858636"} 
[2026-07-14 16:46:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784040377226","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":755,"product_id":755,"name":"Vitamin B Complex","sku":"3392","price":"1000.00","selling_price":"1000.00","purchase_price":"242.00","quantity":1,"subtotal":1000,"product":{"id":755,"name":"Vitamin B Complex","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"242.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"41.00","stock":"42.00","product_type":"Single","tax":null,"sku":"3392","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-10","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T17:11:31.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-14 16:46:18] production.INFO: Stock deduction for product: Vitamin B Complex  
[2026-07-14 16:46:18] production.INFO: Old stock: 41.00  
[2026-07-14 16:46:18] production.INFO: Quantity deducted: 1  
[2026-07-14 16:46:18] production.INFO: New stock: 40  
[2026-07-14 16:46:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784040377226"} 
[2026-07-14 17:09:24] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784041763059","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":660,"product_id":660,"name":"Pyridoxine HCL (Vitamin B6)","sku":"3297","price":"1000.00","selling_price":"1000.00","purchase_price":"333.00","quantity":1,"subtotal":1000,"product":{"id":660,"name":"Pyridoxine HCL (Vitamin B6)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"7","brand_id":"7","supplier_id":null,"purchase_price":"333.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3297","image":null,"description":null,"alert_quantity":"3.00","expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-12T17:11:31.000000Z","brand":{"id":7,"name":"30MG","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"25.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-13T06:14:35.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 17:09:24] production.INFO: Stock deduction for product: Pyridoxine HCL (Vitamin B6)  
[2026-07-14 17:09:24] production.INFO: Old stock: 13.00  
[2026-07-14 17:09:24] production.INFO: Quantity deducted: 1  
[2026-07-14 17:09:24] production.INFO: New stock: 12  
[2026-07-14 17:09:24] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-14 17:09:24] production.INFO: Old stock: 25.00  
[2026-07-14 17:09:24] production.INFO: Quantity deducted: 1  
[2026-07-14 17:09:24] production.INFO: New stock: 24  
[2026-07-14 17:09:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784041763059"} 
[2026-07-14 17:41:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784043709227","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":875,"product_id":875,"name":"L Montus 10mg","sku":"PRD-00875","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":875,"name":"L Montus 10mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1400.00","last_purchase_price":"1400.00","selling_price":"3000.00","current_stock":"8.00","stock":"8.00","product_type":"Single","tax":null,"sku":"PRD-00875","image":null,"description":null,"alert_quantity":"1.00","expiry_date":"2026-06-22","last_purchase_date":"2026-05-14","created_at":"2026-05-14T13:00:53.000000Z","updated_at":"2026-06-22T14:33:30.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 17:41:50] production.INFO: Stock deduction for product: L Montus 10mg  
[2026-07-14 17:41:50] production.INFO: Old stock: 8.00  
[2026-07-14 17:41:50] production.INFO: Quantity deducted: 1  
[2026-07-14 17:41:50] production.INFO: New stock: 7  
[2026-07-14 17:41:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784043709227"} 
[2026-07-14 17:48:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784044102970","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"55.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T09:57:31.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 17:48:25] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-14 17:48:25] production.INFO: Old stock: 55.00  
[2026-07-14 17:48:25] production.INFO: Quantity deducted: 1  
[2026-07-14 17:48:25] production.INFO: New stock: 54  
[2026-07-14 17:48:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784044102970"} 
[2026-07-14 18:04:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784045062958","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","sku":"0774","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"7.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0774","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-04T10:07:42.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 18:04:23] production.INFO: Stock deduction for product: DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)  
[2026-07-14 18:04:23] production.INFO: Old stock: 7.00  
[2026-07-14 18:04:23] production.INFO: Quantity deducted: 1  
[2026-07-14 18:04:23] production.INFO: New stock: 6  
[2026-07-14 18:04:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784045062958"} 
[2026-07-14 18:06:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784045178685","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":837,"product_id":837,"name":"Benylin 4FLU -100ml","sku":"PRD-00837","price":"25000.00","selling_price":"25000.00","purchase_price":"12000.00","quantity":1,"subtotal":25000,"product":{"id":837,"name":"Benylin 4FLU -100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":"75","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"12000.00","last_purchase_price":"12000.00","selling_price":"25000.00","current_stock":"6.00","stock":"7.00","product_type":"Single","tax":null,"sku":"PRD-00837","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":"2026-04-17","created_at":"2026-04-17T07:52:24.000000Z","updated_at":"2026-07-10T09:41:52.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 18:06:20] production.INFO: Stock deduction for product: Benylin 4FLU -100ml  
[2026-07-14 18:06:20] production.INFO: Old stock: 6.00  
[2026-07-14 18:06:20] production.INFO: Quantity deducted: 1  
[2026-07-14 18:06:20] production.INFO: New stock: 5  
[2026-07-14 18:06:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784045178685"} 
[2026-07-14 18:09:40] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784045378669","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":516,"product_id":516,"name":"LOFNAC GEL, 30g","sku":"3153","price":"7500.00","selling_price":"7500.00","purchase_price":"3650.00","quantity":1,"subtotal":7500,"product":{"id":516,"name":"LOFNAC GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"3650.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"5.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3153","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T08:46:42.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":200,"product_id":200,"name":"DACOF EXPECTORANT SYRUP","sku":"0761","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":200,"name":"DACOF EXPECTORANT SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"6.00","stock":"9.00","product_type":"Single","tax":null,"sku":"0761","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-09T06:41:12.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 18:09:40] production.INFO: Stock deduction for product: LOFNAC GEL, 30g  
[2026-07-14 18:09:40] production.INFO: Old stock: 5.00  
[2026-07-14 18:09:40] production.INFO: Quantity deducted: 1  
[2026-07-14 18:09:40] production.INFO: New stock: 4  
[2026-07-14 18:09:40] production.INFO: Stock deduction for product: DACOF EXPECTORANT SYRUP  
[2026-07-14 18:09:40] production.INFO: Old stock: 6.00  
[2026-07-14 18:09:40] production.INFO: Quantity deducted: 1  
[2026-07-14 18:09:40] production.INFO: New stock: 5  
[2026-07-14 18:09:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784045378669"} 
[2026-07-14 18:10:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784045439924","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","sku":"0774","price":"3500.00","selling_price":"3500.00","purchase_price":"1650.00","quantity":1,"subtotal":3500,"product":{"id":227,"name":"DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"9","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"6.00","stock":"11.00","product_type":"Single","tax":null,"sku":"0774","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-14T16:04:23.000000Z","brand":{"id":9,"name":"ABC","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 18:10:40] production.INFO: Stock deduction for product: DEMONA N (DEXAMETHASONE AND NEOMYCIN EYE/EAR DROPS)  
[2026-07-14 18:10:40] production.INFO: Old stock: 6.00  
[2026-07-14 18:10:40] production.INFO: Quantity deducted: 1  
[2026-07-14 18:10:40] production.INFO: New stock: 5  
[2026-07-14 18:10:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784045439924"} 
[2026-07-14 18:33:03] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784046783327","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"10.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-08T15:06:32.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":829,"product_id":829,"name":"Amoxicillin Capsules BP 250 (Moxileb-250)","sku":"PRD-00829","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":829,"name":"Amoxicillin Capsules BP 250 (Moxileb-250)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00829","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":"2026-04-03","created_at":"2026-04-03T12:09:48.000000Z","updated_at":"2026-07-03T13:58:10.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":212,"product_id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","sku":"0732","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":212,"name":"DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"1.00","stock":"8.00","product_type":"Single","tax":null,"sku":"0732","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-08T17:42:37.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 18:33:04] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-07-14 18:33:04] production.INFO: Old stock: 10.00  
[2026-07-14 18:33:04] production.INFO: Quantity deducted: 1  
[2026-07-14 18:33:04] production.INFO: New stock: 9  
[2026-07-14 18:33:04] production.INFO: Stock deduction for product: Amoxicillin Capsules BP 250 (Moxileb-250)  
[2026-07-14 18:33:04] production.INFO: Old stock: 9.00  
[2026-07-14 18:33:04] production.INFO: Quantity deducted: 1  
[2026-07-14 18:33:04] production.INFO: New stock: 8  
[2026-07-14 18:33:04] production.INFO: Stock deduction for product: DAWA-CPM (Chlorpheniramine 2mg/5ml), 60ml  
[2026-07-14 18:33:04] production.INFO: Old stock: 1.00  
[2026-07-14 18:33:04] production.INFO: Quantity deducted: 1  
[2026-07-14 18:33:04] production.INFO: New stock: 0  
[2026-07-14 18:33:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784046783327"} 
[2026-07-14 18:49:55] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784047793827","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Amoxicillin Syrup (Moxileb)","sku":"1327","price":"5500.00","selling_price":"5500.00","purchase_price":"2800.00","quantity":1,"subtotal":5500,"product":{"id":68,"name":"Amoxicillin Syrup (Moxileb)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2800.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"1327","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-14T14:00:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"14.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T10:12:30.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 18:49:55] production.INFO: Stock deduction for product: Amoxicillin Syrup (Moxileb)  
[2026-07-14 18:49:55] production.INFO: Old stock: 10.00  
[2026-07-14 18:49:55] production.INFO: Quantity deducted: 1  
[2026-07-14 18:49:55] production.INFO: New stock: 9  
[2026-07-14 18:49:55] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-07-14 18:49:55] production.INFO: Old stock: 14.00  
[2026-07-14 18:49:55] production.INFO: Quantity deducted: 1  
[2026-07-14 18:49:55] production.INFO: New stock: 13  
[2026-07-14 18:49:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784047793827"} 
[2026-07-14 18:52:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784047930826","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"197.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T13:32:08.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 18:52:12] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-14 18:52:12] production.INFO: Old stock: 197.00  
[2026-07-14 18:52:12] production.INFO: Quantity deducted: 1  
[2026-07-14 18:52:12] production.INFO: New stock: 196  
[2026-07-14 18:52:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784047930826"} 
[2026-07-14 19:20:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784049613956","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":550,"product_id":550,"name":"METFORMIN TABLETS (850MG)","sku":"3187","price":"1500.00","selling_price":"1500.00","purchase_price":"780.00","quantity":1,"subtotal":1500,"product":{"id":550,"name":"METFORMIN TABLETS (850MG)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"780.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"28.00","stock":"33.00","product_type":"Single","tax":null,"sku":"3187","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-07T06:52:00.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 19:20:15] production.INFO: Stock deduction for product: METFORMIN TABLETS (850MG)  
[2026-07-14 19:20:15] production.INFO: Old stock: 28.00  
[2026-07-14 19:20:15] production.INFO: Quantity deducted: 1  
[2026-07-14 19:20:15] production.INFO: New stock: 27  
[2026-07-14 19:20:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784049613956"} 
[2026-07-14 19:24:28] production.INFO: Product Store - Request Data {"all_data":{"_token":"gX1AjH6b3b5W4fdnUA4OBYcLkqcy7lcWgBxQzUOk","name":"Chrorpheniramine Syrup (Cipium)","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"1650.00","selling_price":"3500.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-14 19:24:28] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Chrorpheniramine Syrup (Cipium)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-14 19:24:28] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Chrorpheniramine Syrup (Cipium)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1650.00","selling_price":"3500.00","sku":"PRD-00993","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1650.00","last_purchase_date":"2026-07-14 19:24:28"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-14 19:24:28] production.INFO: Product Store - Product Created {"product_id":993,"product_name":"Chrorpheniramine Syrup (Cipium)","product_sku":"PRD-00993"} 
[2026-07-14 19:30:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784050248809","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":2,"subtotal":22000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"26.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-09T19:44:06.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 19:30:50] production.INFO: Stock deduction for product: HIV Test kit  
[2026-07-14 19:30:50] production.INFO: Old stock: 26.00  
[2026-07-14 19:30:50] production.INFO: Quantity deducted: 2  
[2026-07-14 19:30:50] production.INFO: New stock: 24  
[2026-07-14 19:30:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784050248809"} 
[2026-07-14 19:33:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784050423009","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":540,"product_id":540,"name":"Manyuchi Classic Condoms","sku":"3177","price":"1000.00","selling_price":"1000.00","purchase_price":"400.00","quantity":5,"subtotal":5000,"product":{"id":540,"name":"Manyuchi Classic Condoms","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"400.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"160.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3177","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-09T16:31:10.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-14 19:33:44] production.INFO: Stock deduction for product: Manyuchi Classic Condoms  
[2026-07-14 19:33:44] production.INFO: Old stock: 160.00  
[2026-07-14 19:33:44] production.INFO: Quantity deducted: 5  
[2026-07-14 19:33:44] production.INFO: New stock: 155  
[2026-07-14 19:33:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784050423009"} 
[2026-07-14 19:52:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784051521684","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"54.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T15:48:25.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 19:52:13] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-14 19:52:13] production.INFO: Old stock: 54.00  
[2026-07-14 19:52:13] production.INFO: Quantity deducted: 1  
[2026-07-14 19:52:13] production.INFO: New stock: 53  
[2026-07-14 19:52:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784051521684"} 
[2026-07-14 19:54:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784051651267","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"9.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T06:09:35.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-14 19:54:12] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-14 19:54:12] production.INFO: Old stock: 9.00  
[2026-07-14 19:54:12] production.INFO: Quantity deducted: 1  
[2026-07-14 19:54:12] production.INFO: New stock: 8  
[2026-07-14 19:54:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784051651267"} 
[2026-07-14 20:29:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784053795779","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-07-09T15:37:21.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 20:29:56] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-07-14 20:29:56] production.INFO: Old stock: 11.00  
[2026-07-14 20:29:56] production.INFO: Quantity deducted: 1  
[2026-07-14 20:29:56] production.INFO: New stock: 10  
[2026-07-14 20:29:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784053795779"} 
[2026-07-14 20:31:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784053891010","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"196.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T16:52:12.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 20:31:31] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-14 20:31:31] production.INFO: Old stock: 196.00  
[2026-07-14 20:31:31] production.INFO: Quantity deducted: 10  
[2026-07-14 20:31:31] production.INFO: New stock: 186  
[2026-07-14 20:31:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784053891010"} 
[2026-07-14 20:49:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784054999686","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"224.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T13:32:28.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-14 20:49:59] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-14 20:49:59] production.INFO: Old stock: 224.00  
[2026-07-14 20:49:59] production.INFO: Quantity deducted: 1  
[2026-07-14 20:49:59] production.INFO: New stock: 223  
[2026-07-14 20:49:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784054999686"} 
[2026-07-15 08:20:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784096405160","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"20.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T15:57:07.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 08:20:05] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-07-15 08:20:05] production.INFO: Old stock: 20.00  
[2026-07-15 08:20:05] production.INFO: Quantity deducted: 1  
[2026-07-15 08:20:05] production.INFO: New stock: 19  
[2026-07-15 08:20:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784096405160"} 
[2026-07-15 08:27:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784096872071","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"16.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T15:02:18.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 08:27:53] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-07-15 08:27:53] production.INFO: Old stock: 16.00  
[2026-07-15 08:27:53] production.INFO: Quantity deducted: 1  
[2026-07-15 08:27:53] production.INFO: New stock: 15  
[2026-07-15 08:27:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784096872071"} 
[2026-07-15 08:28:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784096900503","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"186.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T18:31:31.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 08:28:20] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-15 08:28:20] production.INFO: Old stock: 186.00  
[2026-07-15 08:28:20] production.INFO: Quantity deducted: 2  
[2026-07-15 08:28:20] production.INFO: New stock: 184  
[2026-07-15 08:28:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784096900503"} 
[2026-07-15 08:54:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784098451855","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"53.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T17:52:13.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 08:54:12] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-15 08:54:12] production.INFO: Old stock: 53.00  
[2026-07-15 08:54:12] production.INFO: Quantity deducted: 1  
[2026-07-15 08:54:12] production.INFO: New stock: 52  
[2026-07-15 08:54:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784098451855"} 
[2026-07-15 09:09:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784099359062","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"84.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T18:00:41.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-15 09:09:20] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-15 09:09:20] production.INFO: Old stock: 84.00  
[2026-07-15 09:09:20] production.INFO: Quantity deducted: 1  
[2026-07-15 09:09:20] production.INFO: New stock: 83  
[2026-07-15 09:09:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784099359062"} 
[2026-07-15 09:58:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784102306629","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-13T17:04:11.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"cash"}} 
[2026-07-15 09:58:28] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-07-15 09:58:28] production.INFO: Old stock: 25.00  
[2026-07-15 09:58:28] production.INFO: Quantity deducted: 1  
[2026-07-15 09:58:28] production.INFO: New stock: 24  
[2026-07-15 09:58:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784102306629"} 
[2026-07-15 10:32:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784104377604","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":834,"product_id":834,"name":"Insulin Syring","sku":"PRD-00834","price":"500.00","selling_price":"500.00","purchase_price":"150.00","quantity":10,"subtotal":5000,"product":{"id":834,"name":"Insulin Syring","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"500.00","current_stock":"90.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00834","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-13","created_at":"2026-04-13T11:58:22.000000Z","updated_at":"2026-07-04T08:19:33.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 10:32:58] production.INFO: Stock deduction for product: Insulin Syring  
[2026-07-15 10:32:58] production.INFO: Old stock: 90.00  
[2026-07-15 10:32:58] production.INFO: Quantity deducted: 10  
[2026-07-15 10:32:58] production.INFO: New stock: 80  
[2026-07-15 10:32:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784104377604"} 
[2026-07-15 11:08:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784106515042","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":3,"subtotal":900,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"223.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T18:49:59.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 11:08:34] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-15 11:08:34] production.INFO: Old stock: 223.00  
[2026-07-15 11:08:34] production.INFO: Quantity deducted: 3  
[2026-07-15 11:08:34] production.INFO: New stock: 220  
[2026-07-15 11:08:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784106515042"} 
[2026-07-15 11:14:23] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1784106861666","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":968,"product_id":968,"name":"E-Vien Softgel Cap (Vitamin E Softgel)","sku":"PRD-00968","price":"7500.00","selling_price":"7500.00","purchase_price":"3500.00","quantity":1,"subtotal":7500,"product":{"id":968,"name":"E-Vien Softgel Cap (Vitamin E Softgel)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","last_purchase_price":"3500.00","selling_price":"7500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00968","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-07-03","created_at":"2026-07-03T14:53:59.000000Z","updated_at":"2026-07-03T15:00:13.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":703,"product_id":703,"name":"Stalcal Tab( Calcium)","sku":"3340","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":2,"subtotal":6000,"product":{"id":703,"name":"Stalcal Tab( Calcium)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"21.00","stock":"30.00","product_type":"Single","tax":null,"sku":"3340","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-08T11:36:38.000000Z","brand":null,"category":null}},{"id":755,"product_id":755,"name":"Vitamin B Complex","sku":"3392","price":"1000.00","selling_price":"1000.00","purchase_price":"242.00","quantity":1,"subtotal":1000,"product":{"id":755,"name":"Vitamin B Complex","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"242.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"40.00","stock":"42.00","product_type":"Single","tax":null,"sku":"3392","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-10","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T14:46:18.000000Z","brand":null,"category":null}},{"id":379,"product_id":379,"name":"FOLIC ACID 5MG (FOLIBEN)","sku":"3016","price":"600.00","selling_price":"600.00","purchase_price":"350.00","quantity":1,"subtotal":600,"product":{"id":379,"name":"FOLIC ACID 5MG (FOLIBEN)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"350.00","last_purchase_price":null,"selling_price":"600.00","current_stock":"93.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3016","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-12T17:11:31.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-15 11:14:23] production.INFO: Stock deduction for product: E-Vien Softgel Cap (Vitamin E Softgel)  
[2026-07-15 11:14:23] production.INFO: Old stock: 6.00  
[2026-07-15 11:14:23] production.INFO: Quantity deducted: 1  
[2026-07-15 11:14:23] production.INFO: New stock: 5  
[2026-07-15 11:14:23] production.INFO: Stock deduction for product: Stalcal Tab( Calcium)  
[2026-07-15 11:14:23] production.INFO: Old stock: 21.00  
[2026-07-15 11:14:23] production.INFO: Quantity deducted: 2  
[2026-07-15 11:14:23] production.INFO: New stock: 19  
[2026-07-15 11:14:23] production.INFO: Stock deduction for product: Vitamin B Complex  
[2026-07-15 11:14:23] production.INFO: Old stock: 40.00  
[2026-07-15 11:14:23] production.INFO: Quantity deducted: 1  
[2026-07-15 11:14:23] production.INFO: New stock: 39  
[2026-07-15 11:14:23] production.INFO: Stock deduction for product: FOLIC ACID 5MG (FOLIBEN)  
[2026-07-15 11:14:23] production.INFO: Old stock: 93.00  
[2026-07-15 11:14:23] production.INFO: Quantity deducted: 1  
[2026-07-15 11:14:23] production.INFO: New stock: 92  
[2026-07-15 11:14:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784106861666"} 
[2026-07-15 11:29:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784107746858","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":100,"product_id":100,"name":"BECLOMIN CREAM, 30g","sku":"0696","price":"5500.00","selling_price":"5500.00","purchase_price":"2450.00","quantity":2,"subtotal":11000,"product":{"id":100,"name":"BECLOMIN CREAM, 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"2450.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0696","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-14T10:13:38.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 11:29:08] production.INFO: Stock deduction for product: BECLOMIN CREAM, 30g  
[2026-07-15 11:29:08] production.INFO: Old stock: 5.00  
[2026-07-15 11:29:08] production.INFO: Quantity deducted: 2  
[2026-07-15 11:29:08] production.INFO: New stock: 3  
[2026-07-15 11:29:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784107746858"} 
[2026-07-15 12:22:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784110977072","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":791,"product_id":791,"name":"Coldril Capsules","sku":"1261","price":"10000.00","selling_price":"10000.00","purchase_price":"3417.00","quantity":1,"subtotal":10000,"product":{"id":791,"name":"Coldril Capsules","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"3417.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"20.00","stock":"40.00","product_type":"Single","tax":null,"sku":"1261","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-11T08:02:52.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 12:22:57] production.INFO: Stock deduction for product: Coldril Capsules  
[2026-07-15 12:22:57] production.INFO: Old stock: 20.00  
[2026-07-15 12:22:57] production.INFO: Quantity deducted: 1  
[2026-07-15 12:22:57] production.INFO: New stock: 19  
[2026-07-15 12:22:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784110977072"} 
[2026-07-15 12:40:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784112056975","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"52.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T06:54:12.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 12:40:58] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-15 12:40:58] production.INFO: Old stock: 52.00  
[2026-07-15 12:40:58] production.INFO: Quantity deducted: 1  
[2026-07-15 12:40:58] production.INFO: New stock: 51  
[2026-07-15 12:40:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784112056975"} 
[2026-07-15 12:53:12] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784112791887","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":185,"product_id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","sku":"0655","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"4.00","stock":"4.00","product_type":"Single","tax":null,"sku":"0655","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-12T14:30:46.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":2,"subtotal":2000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"106.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T18:54:33.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 12:53:12] production.INFO: Stock deduction for product: CLAMOXIN 625MG Tablets (AUGMENTIN)  
[2026-07-15 12:53:12] production.INFO: Old stock: 4.00  
[2026-07-15 12:53:12] production.INFO: Quantity deducted: 1  
[2026-07-15 12:53:12] production.INFO: New stock: 3  
[2026-07-15 12:53:12] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-15 12:53:12] production.INFO: Old stock: 106.00  
[2026-07-15 12:53:12] production.INFO: Quantity deducted: 2  
[2026-07-15 12:53:12] production.INFO: New stock: 104  
[2026-07-15 12:53:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784112791887"} 
[2026-07-15 13:31:39] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784115098350","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"2.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-14T14:26:37.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":1,"subtotal":1000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"88.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-14T13:40:29.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-15 13:31:39] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-15 13:31:39] production.INFO: Old stock: 2.00  
[2026-07-15 13:31:39] production.INFO: Quantity deducted: 1  
[2026-07-15 13:31:39] production.INFO: New stock: 1  
[2026-07-15 13:31:39] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-15 13:31:39] production.INFO: Old stock: 88.00  
[2026-07-15 13:31:39] production.INFO: Quantity deducted: 1  
[2026-07-15 13:31:39] production.INFO: New stock: 87  
[2026-07-15 13:31:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784115098350"} 
[2026-07-15 14:18:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784117917548","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":7,"subtotal":2100,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"220.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T09:08:34.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 14:18:37] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-15 14:18:37] production.INFO: Old stock: 220.00  
[2026-07-15 14:18:37] production.INFO: Quantity deducted: 7  
[2026-07-15 14:18:37] production.INFO: New stock: 213  
[2026-07-15 14:18:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784117917548"} 
[2026-07-15 14:48:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784119715579","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":2,"subtotal":6000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"23.00","stock":"26.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-14T10:47:50.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 14:48:36] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-15 14:48:36] production.INFO: Old stock: 23.00  
[2026-07-15 14:48:36] production.INFO: Quantity deducted: 2  
[2026-07-15 14:48:36] production.INFO: New stock: 21  
[2026-07-15 14:48:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784119715579"} 
[2026-07-15 14:53:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784119996659","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"26.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-14T06:58:00.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 14:53:18] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-15 14:53:18] production.INFO: Old stock: 26.00  
[2026-07-15 14:53:18] production.INFO: Quantity deducted: 1  
[2026-07-15 14:53:18] production.INFO: New stock: 25  
[2026-07-15 14:53:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784119996659"} 
[2026-07-15 14:56:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784120178243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":2,"subtotal":3000,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"59.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-14T13:22:19.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-15 14:56:18] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-15 14:56:18] production.INFO: Old stock: 59.00  
[2026-07-15 14:56:18] production.INFO: Quantity deducted: 2  
[2026-07-15 14:56:18] production.INFO: New stock: 57  
[2026-07-15 14:56:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784120178243"} 
[2026-07-15 15:03:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784120634258","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":6,"subtotal":24000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"8.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T17:54:12.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 15:03:53] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-15 15:03:53] production.INFO: Old stock: 8.00  
[2026-07-15 15:03:53] production.INFO: Quantity deducted: 6  
[2026-07-15 15:03:53] production.INFO: New stock: 2  
[2026-07-15 15:03:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784120634258"} 
[2026-07-15 15:04:06] production.INFO: Stock Adjustment - Initial State {"product_id":"479","previous_quantity":"12.00","previous_selling_price":"3500.00","validated_data":{"product_id":"479","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 15:04:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":479,"new_quantity":32.0,"current_stock":32.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 15:07:07] production.INFO: Stock Adjustment - Initial State {"product_id":"673","previous_quantity":"0.00","previous_selling_price":"3000.00","validated_data":{"product_id":"673","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":"2000.00","new_expiry_date":"2026-07-15"}} 
[2026-07-15 15:07:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":673,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 15:08:18] production.INFO: Stock Adjustment - Initial State {"product_id":"253","previous_quantity":"0.00","previous_selling_price":"3000.00","validated_data":{"product_id":"253","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":"1600.00","new_expiry_date":"2026-07-15"}} 
[2026-07-15 15:08:18] production.INFO: Stock Adjustment - After Quantity Save {"product_id":253,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 15:10:19] production.INFO: Stock Adjustment - Initial State {"product_id":"66","previous_quantity":"1.00","previous_selling_price":"15000.00","validated_data":{"product_id":"66","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 15:10:19] production.INFO: Stock Adjustment - After Quantity Save {"product_id":66,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 15:48:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784123307825","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"50.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T16:21:03.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 15:48:27] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-15 15:48:27] production.INFO: Old stock: 50.00  
[2026-07-15 15:48:27] production.INFO: Quantity deducted: 1  
[2026-07-15 15:48:27] production.INFO: New stock: 49  
[2026-07-15 15:48:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784123307825"} 
[2026-07-15 16:08:29] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784124508609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":3,"subtotal":4500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"83.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-15T07:09:20.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"104.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-15T10:53:12.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 16:08:29] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-15 16:08:29] production.INFO: Old stock: 83.00  
[2026-07-15 16:08:29] production.INFO: Quantity deducted: 3  
[2026-07-15 16:08:29] production.INFO: New stock: 80  
[2026-07-15 16:08:29] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-15 16:08:29] production.INFO: Old stock: 104.00  
[2026-07-15 16:08:29] production.INFO: Quantity deducted: 1  
[2026-07-15 16:08:29] production.INFO: New stock: 103  
[2026-07-15 16:08:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784124508609"} 
[2026-07-15 16:16:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784125011752","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":410,"product_id":410,"name":"Gentanycin Eye Drops (WW-Genta)","sku":"3047","price":"2500.00","selling_price":"2500.00","purchase_price":"1000.00","quantity":1,"subtotal":2500,"product":{"id":410,"name":"Gentanycin Eye Drops (WW-Genta)","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1000.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3047","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-06T10:10:30.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 16:16:51] production.INFO: Stock deduction for product: Gentanycin Eye Drops (WW-Genta)  
[2026-07-15 16:16:51] production.INFO: Old stock: 6.00  
[2026-07-15 16:16:51] production.INFO: Quantity deducted: 1  
[2026-07-15 16:16:51] production.INFO: New stock: 5  
[2026-07-15 16:16:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784125011752"} 
[2026-07-15 16:19:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784125188248","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":778,"product_id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","sku":"3415","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":1,"subtotal":2500,"product":{"id":778,"name":"ZINNIZ F (Hormonal Contraceptive)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"26","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"61.00","stock":"61.00","product_type":"Single","tax":null,"sku":"3415","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T19:40:42.000000Z","brand":null,"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 16:19:48] production.INFO: Stock deduction for product: ZINNIZ F (Hormonal Contraceptive)  
[2026-07-15 16:19:48] production.INFO: Old stock: 61.00  
[2026-07-15 16:19:48] production.INFO: Quantity deducted: 1  
[2026-07-15 16:19:48] production.INFO: New stock: 60  
[2026-07-15 16:19:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784125188248"} 
[2026-07-15 16:31:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784125860561","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":525,"product_id":525,"name":"LONART TABLETS 24'S","sku":"3162","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":1,"subtotal":4000,"product":{"id":525,"name":"LONART TABLETS 24'S","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"27.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3162","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T14:03:42.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 16:31:04] production.INFO: Stock deduction for product: LONART TABLETS 24'S  
[2026-07-15 16:31:04] production.INFO: Old stock: 27.00  
[2026-07-15 16:31:04] production.INFO: Quantity deducted: 1  
[2026-07-15 16:31:04] production.INFO: New stock: 26  
[2026-07-15 16:31:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784125860561"} 
[2026-07-15 17:08:24] production.INFO: Stock Adjustment - Initial State {"product_id":"107","previous_quantity":"0.00","previous_selling_price":"30000.00","validated_data":{"product_id":"107","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:08:24] production.INFO: Stock Adjustment - After Quantity Save {"product_id":107,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:09:34] production.INFO: Stock Adjustment - Initial State {"product_id":"108","previous_quantity":"2.00","previous_selling_price":"30000.00","validated_data":{"product_id":"108","adjustment_type":"add","quantity":"4","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:09:34] production.INFO: Stock Adjustment - After Quantity Save {"product_id":108,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:10:48] production.INFO: Stock Adjustment - Initial State {"product_id":"107","previous_quantity":"5.00","previous_selling_price":"30000.00","validated_data":{"product_id":"107","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:10:48] production.INFO: Stock Adjustment - After Quantity Save {"product_id":107,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:11:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784128269926","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"51.00","stock":"97.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T10:40:58.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 17:11:09] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-15 17:11:09] production.INFO: Old stock: 51.00  
[2026-07-15 17:11:09] production.INFO: Quantity deducted: 1  
[2026-07-15 17:11:09] production.INFO: New stock: 50  
[2026-07-15 17:11:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784128269926"} 
[2026-07-15 17:13:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784128406397","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"57.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-15T12:56:18.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 17:13:27] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-15 17:13:27] production.INFO: Old stock: 57.00  
[2026-07-15 17:13:27] production.INFO: Quantity deducted: 1  
[2026-07-15 17:13:27] production.INFO: New stock: 56  
[2026-07-15 17:13:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784128406397"} 
[2026-07-15 17:15:23] production.INFO: Stock Adjustment - Initial State {"product_id":"108","previous_quantity":"6.00","previous_selling_price":"30000.00","validated_data":{"product_id":"108","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:15:23] production.INFO: Stock Adjustment - After Quantity Save {"product_id":108,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:16:15] production.INFO: Stock Adjustment - Initial State {"product_id":"107","previous_quantity":"6.00","previous_selling_price":"30000.00","validated_data":{"product_id":"107","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:16:15] production.INFO: Stock Adjustment - After Quantity Save {"product_id":107,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:16:16] production.INFO: Stock Adjustment - Initial State {"product_id":"107","previous_quantity":"5.00","previous_selling_price":"30000.00","validated_data":{"product_id":"107","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:16:16] production.INFO: Stock Adjustment - After Quantity Save {"product_id":107,"new_quantity":4.0,"current_stock":4.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:18:34] production.INFO: Stock Adjustment - Initial State {"product_id":"107","previous_quantity":"4.00","previous_selling_price":"30000.00","validated_data":{"product_id":"107","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:18:34] production.INFO: Stock Adjustment - After Quantity Save {"product_id":107,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:19:42] production.INFO: Stock Adjustment - Initial State {"product_id":"98","previous_quantity":"1.00","previous_selling_price":"10000.00","validated_data":{"product_id":"98","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"25000.00","new_purchase_price":"12400.00","new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:19:42] production.INFO: Stock Adjustment - After Quantity Save {"product_id":98,"new_quantity":6.0,"current_stock":6.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:21:33] production.INFO: Stock Adjustment - Initial State {"product_id":"67","previous_quantity":"37.00","previous_selling_price":"4500.00","validated_data":{"product_id":"67","adjustment_type":"add","quantity":"33","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:21:33] production.INFO: Stock Adjustment - After Quantity Save {"product_id":67,"new_quantity":70.0,"current_stock":70.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:22:31] production.INFO: Stock Adjustment - Initial State {"product_id":"422","previous_quantity":"10.00","previous_selling_price":"10000.00","validated_data":{"product_id":"422","adjustment_type":"add","quantity":"4","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:22:31] production.INFO: Stock Adjustment - After Quantity Save {"product_id":422,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:27:30] production.INFO: Stock Adjustment - Initial State {"product_id":"702","previous_quantity":"8.00","previous_selling_price":"2500.00","validated_data":{"product_id":"702","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"3500.00","new_purchase_price":"1600.00","new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:27:30] production.INFO: Stock Adjustment - After Quantity Save {"product_id":702,"new_quantity":18.0,"current_stock":18.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:29:19] production.INFO: Product Store - Request Data {"all_data":{"_token":"JkxVkFFsk4bXfc6C1DCI5AFxAHhitZXgbcyE1KHV","name":"Atenolol Denk","sku":null,"category_id":"7","brand_id":"8","unit_id":null,"purchase_price":"5300.00","selling_price":"11000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"7","brand_id":"8","supplier_id":"1"} 
[2026-07-15 17:29:19] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Atenolol Denk","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5300.00","selling_price":"11000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"7","brand_id_value":"8"} 
[2026-07-15 17:29:19] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Atenolol Denk","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"5300.00","selling_price":"11000.00","sku":"PRD-00994","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"5300.00","last_purchase_date":"2026-07-15 17:29:19"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-15 17:29:19] production.INFO: Product Store - Product Created {"product_id":994,"product_name":"Atenolol Denk","product_sku":"PRD-00994"} 
[2026-07-15 17:30:43] production.INFO: Stock Adjustment - Initial State {"product_id":"673","previous_quantity":"10.00","previous_selling_price":"4000.00","validated_data":{"product_id":"673","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:30:43] production.INFO: Stock Adjustment - After Quantity Save {"product_id":673,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:31:54] production.INFO: Stock Adjustment - Initial State {"product_id":"561","previous_quantity":"4.00","previous_selling_price":"5500.00","validated_data":{"product_id":"561","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":"6000.00","new_purchase_price":"2950.00","new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:31:54] production.INFO: Stock Adjustment - After Quantity Save {"product_id":561,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:32:22] production.INFO: Stock Adjustment - Initial State {"product_id":"66","previous_quantity":"6.00","previous_selling_price":"15000.00","validated_data":{"product_id":"66","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:32:22] production.INFO: Stock Adjustment - After Quantity Save {"product_id":66,"new_quantity":11.0,"current_stock":11.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:33:11] production.INFO: Stock Adjustment - Initial State {"product_id":"516","previous_quantity":"4.00","previous_selling_price":"7500.00","validated_data":{"product_id":"516","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:33:11] production.INFO: Stock Adjustment - After Quantity Save {"product_id":516,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:33:56] production.INFO: Stock Adjustment - Initial State {"product_id":"723","previous_quantity":"5.00","previous_selling_price":"4000.00","validated_data":{"product_id":"723","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:33:56] production.INFO: Stock Adjustment - After Quantity Save {"product_id":723,"new_quantity":15.0,"current_stock":15.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:34:17] production.INFO: Stock Adjustment - Initial State {"product_id":"746","previous_quantity":"50.00","previous_selling_price":"4500.00","validated_data":{"product_id":"746","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-15"}} 
[2026-07-15 17:34:17] production.INFO: Stock Adjustment - After Quantity Save {"product_id":746,"new_quantity":70.0,"current_stock":70.0,"changes_made":"Quantity adjusted"} 
[2026-07-15 17:35:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784129746760","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":432,"product_id":432,"name":"Griseofulvin 125mg","sku":"3069","price":"3000.00","selling_price":"3000.00","purchase_price":"1459.00","quantity":2,"subtotal":6000,"product":{"id":432,"name":"Griseofulvin 125mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"15","brand_id":"1","supplier_id":null,"purchase_price":"1459.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"26.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3069","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-22T14:28:22.000000Z","brand":null,"category":{"id":15,"name":"ANTIFUNGAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-15 17:35:46] production.INFO: Stock deduction for product: Griseofulvin 125mg  
[2026-07-15 17:35:46] production.INFO: Old stock: 26.00  
[2026-07-15 17:35:46] production.INFO: Quantity deducted: 2  
[2026-07-15 17:35:46] production.INFO: New stock: 24  
[2026-07-15 17:35:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784129746760"} 
[2026-07-15 17:45:02] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784130302407","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":199,"product_id":199,"name":"DACOF DRY SYRUP","sku":"0760","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":199,"name":"DACOF DRY SYRUP","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"31","brand_id":"31","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"18.00","stock":"18.00","product_type":"Single","tax":null,"sku":"0760","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-14T13:48:32.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":31,"name":"COUGH SYRUP","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"16.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-11T15:56:22.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 17:45:03] production.INFO: Stock deduction for product: DACOF DRY SYRUP  
[2026-07-15 17:45:03] production.INFO: Old stock: 18.00  
[2026-07-15 17:45:03] production.INFO: Quantity deducted: 1  
[2026-07-15 17:45:03] production.INFO: New stock: 17  
[2026-07-15 17:45:03] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-15 17:45:03] production.INFO: Old stock: 16.00  
[2026-07-15 17:45:03] production.INFO: Quantity deducted: 1  
[2026-07-15 17:45:03] production.INFO: New stock: 15  
[2026-07-15 17:45:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784130302407"} 
[2026-07-15 17:51:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784130709637","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":768,"product_id":768,"name":"XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP","sku":"3405","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":768,"name":"XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3405","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T14:29:12.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 17:51:49] production.INFO: Stock deduction for product: XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP  
[2026-07-15 17:51:49] production.INFO: Old stock: 9.00  
[2026-07-15 17:51:49] production.INFO: Quantity deducted: 1  
[2026-07-15 17:51:49] production.INFO: New stock: 8  
[2026-07-15 17:51:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784130709637"} 
[2026-07-15 18:06:14] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784131575050","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":1,"subtotal":1500,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"59.00","stock":"62.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T13:43:32.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"67.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-13T14:49:50.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":659,"product_id":659,"name":"PROPRANOLOL 40MG","sku":"3296","price":"1000.00","selling_price":"1000.00","purchase_price":"409.00","quantity":1,"subtotal":1000,"product":{"id":659,"name":"PROPRANOLOL 40MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"409.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"79.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3296","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-28T09:20:33.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 18:06:14] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-07-15 18:06:14] production.INFO: Old stock: 59.00  
[2026-07-15 18:06:14] production.INFO: Quantity deducted: 1  
[2026-07-15 18:06:14] production.INFO: New stock: 58  
[2026-07-15 18:06:14] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-15 18:06:14] production.INFO: Old stock: 67.00  
[2026-07-15 18:06:14] production.INFO: Quantity deducted: 1  
[2026-07-15 18:06:14] production.INFO: New stock: 66  
[2026-07-15 18:06:14] production.INFO: Stock deduction for product: PROPRANOLOL 40MG  
[2026-07-15 18:06:14] production.INFO: Old stock: 79.00  
[2026-07-15 18:06:14] production.INFO: Quantity deducted: 1  
[2026-07-15 18:06:14] production.INFO: New stock: 78  
[2026-07-15 18:06:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784131575050"} 
[2026-07-15 18:09:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784131772697","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":523,"product_id":523,"name":"LONART DS","sku":"3160","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":523,"name":"LONART DS","business_location":"EDUC Pharmacy","unit_id":"63","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"16.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3160","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-06-14T15:48:31.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":665,"product_id":665,"name":"Re-Cart Capsule","sku":"3302","price":"16000.00","selling_price":"16000.00","purchase_price":"8000.00","quantity":1,"subtotal":16000,"product":{"id":665,"name":"Re-Cart Capsule","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"5.00","stock":"7.00","product_type":"Single","tax":null,"sku":"3302","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T16:07:06.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-15 18:09:33] production.INFO: Stock deduction for product: LONART DS  
[2026-07-15 18:09:33] production.INFO: Old stock: 16.00  
[2026-07-15 18:09:33] production.INFO: Quantity deducted: 1  
[2026-07-15 18:09:33] production.INFO: New stock: 15  
[2026-07-15 18:09:33] production.INFO: Stock deduction for product: Re-Cart Capsule  
[2026-07-15 18:09:33] production.INFO: Old stock: 5.00  
[2026-07-15 18:09:33] production.INFO: Quantity deducted: 1  
[2026-07-15 18:09:33] production.INFO: New stock: 4  
[2026-07-15 18:09:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784131772697"} 
[2026-07-15 18:16:26] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784132185720","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":790,"product_id":790,"name":"COLDRID TABLETS","sku":"0748","price":"5500.00","selling_price":"5500.00","purchase_price":"2650.00","quantity":1,"subtotal":5500,"product":{"id":790,"name":"COLDRID TABLETS","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"2650.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"43.00","stock":"51.00","product_type":"Single","tax":null,"sku":"0748","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-07-13T15:46:27.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":573,"product_id":573,"name":"Mucolyn Aldut 100ml","sku":"3210","price":"12000.00","selling_price":"12000.00","purchase_price":"8000.00","quantity":1,"subtotal":12000,"product":{"id":573,"name":"Mucolyn Aldut 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"12000.00","current_stock":"17.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3210","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-29","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-08T07:35:03.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 18:16:26] production.INFO: Stock deduction for product: COLDRID TABLETS  
[2026-07-15 18:16:26] production.INFO: Old stock: 43.00  
[2026-07-15 18:16:26] production.INFO: Quantity deducted: 1  
[2026-07-15 18:16:26] production.INFO: New stock: 42  
[2026-07-15 18:16:26] production.INFO: Stock deduction for product: Mucolyn Aldut 100ml  
[2026-07-15 18:16:26] production.INFO: Old stock: 17.00  
[2026-07-15 18:16:26] production.INFO: Quantity deducted: 1  
[2026-07-15 18:16:26] production.INFO: New stock: 16  
[2026-07-15 18:16:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784132185720"} 
[2026-07-15 18:18:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784132301271","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"90.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-11T12:46:59.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 18:18:20] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-15 18:18:20] production.INFO: Old stock: 90.00  
[2026-07-15 18:18:20] production.INFO: Quantity deducted: 1  
[2026-07-15 18:18:20] production.INFO: New stock: 89  
[2026-07-15 18:18:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784132301271"} 
[2026-07-15 18:18:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784132334503","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"89.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-15T16:18:20.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":559,"product_id":559,"name":"Metronidazole 200 MG","sku":"3196","price":"2000.00","selling_price":"2000.00","purchase_price":"850.00","quantity":1,"subtotal":2000,"product":{"id":559,"name":"Metronidazole 200 MG","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"850.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"1.00","stock":"71.00","product_type":"Single","tax":null,"sku":"3196","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-15T11:31:39.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-15 18:18:54] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-15 18:18:54] production.INFO: Old stock: 89.00  
[2026-07-15 18:18:54] production.INFO: Quantity deducted: 1  
[2026-07-15 18:18:54] production.INFO: New stock: 88  
[2026-07-15 18:18:54] production.INFO: Stock deduction for product: Metronidazole 200 MG  
[2026-07-15 18:18:54] production.INFO: Old stock: 1.00  
[2026-07-15 18:18:54] production.INFO: Quantity deducted: 1  
[2026-07-15 18:18:54] production.INFO: New stock: 0  
[2026-07-15 18:18:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784132334503"} 
[2026-07-15 18:23:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784132638350","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":775,"product_id":775,"name":"ZECUF LOZENGES","sku":"3412","price":"2000.00","selling_price":"2000.00","purchase_price":"1100.00","quantity":1,"subtotal":2000,"product":{"id":775,"name":"ZECUF LOZENGES","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"14","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"15.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3412","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T15:45:03.000000Z","brand":null,"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-15 18:23:59] production.INFO: Stock deduction for product: ZECUF LOZENGES  
[2026-07-15 18:23:59] production.INFO: Old stock: 15.00  
[2026-07-15 18:23:59] production.INFO: Quantity deducted: 1  
[2026-07-15 18:23:59] production.INFO: New stock: 14  
[2026-07-15 18:23:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784132638350"} 
[2026-07-15 19:08:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784135332636","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":557,"product_id":557,"name":"METHYLATED SPIRIT 50ML","sku":"3194","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":557,"name":"METHYLATED SPIRIT 50ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"14.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3194","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-10T08:52:52.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 19:08:52] production.INFO: Stock deduction for product: METHYLATED SPIRIT 50ML  
[2026-07-15 19:08:52] production.INFO: Old stock: 14.00  
[2026-07-15 19:08:52] production.INFO: Quantity deducted: 1  
[2026-07-15 19:08:52] production.INFO: New stock: 13  
[2026-07-15 19:08:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784135332636"} 
[2026-07-15 19:49:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784137766651","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":520,"product_id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","sku":"3157","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":520,"name":"LOFNAC-100 (Diclofenac SR 100mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"19","supplier_id":null,"purchase_price":"475.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"95.00","stock":"139.00","product_type":"Single","tax":null,"sku":"3157","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-11T08:10:58.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 19:49:27] production.INFO: Stock deduction for product: LOFNAC-100 (Diclofenac SR 100mg)  
[2026-07-15 19:49:27] production.INFO: Old stock: 95.00  
[2026-07-15 19:49:27] production.INFO: Quantity deducted: 1  
[2026-07-15 19:49:27] production.INFO: New stock: 94  
[2026-07-15 19:49:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784137766651"} 
[2026-07-15 20:36:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784140585232","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"27.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-11T17:40:29.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-15 20:36:24] production.INFO: Stock deduction for product: Iduplus  
[2026-07-15 20:36:24] production.INFO: Old stock: 27.00  
[2026-07-15 20:36:24] production.INFO: Quantity deducted: 1  
[2026-07-15 20:36:24] production.INFO: New stock: 26  
[2026-07-15 20:36:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784140585232"} 
[2026-07-16 09:17:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784186232474","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"2.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T13:03:53.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 09:17:12] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-16 09:17:12] production.INFO: Old stock: 2.00  
[2026-07-16 09:17:12] production.INFO: Quantity deducted: 1  
[2026-07-16 09:17:12] production.INFO: New stock: 1  
[2026-07-16 09:17:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784186232474"} 
[2026-07-16 09:17:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784186263290","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":737,"product_id":737,"name":"Tripride 2","sku":"3374","price":"18500.00","selling_price":"18500.00","purchase_price":"9300.00","quantity":1,"subtotal":18500,"product":{"id":737,"name":"Tripride 2","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":null,"supplier_id":null,"purchase_price":"9300.00","last_purchase_price":null,"selling_price":"18500.00","current_stock":"36.00","stock":"37.00","product_type":"Single","tax":null,"sku":"3374","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T14:35:34.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-16 09:17:42] production.INFO: Stock deduction for product: Tripride 2  
[2026-07-16 09:17:42] production.INFO: Old stock: 36.00  
[2026-07-16 09:17:42] production.INFO: Quantity deducted: 1  
[2026-07-16 09:17:42] production.INFO: New stock: 35  
[2026-07-16 09:17:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784186263290"} 
[2026-07-16 09:40:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784187643861","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":1,"subtotal":1500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"15.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-15T06:27:53.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 09:40:44] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-07-16 09:40:44] production.INFO: Old stock: 15.00  
[2026-07-16 09:40:44] production.INFO: Quantity deducted: 1  
[2026-07-16 09:40:44] production.INFO: New stock: 14  
[2026-07-16 09:40:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784187643861"} 
[2026-07-16 09:50:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784188204163","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11500.00","selling_price":"11500.00","purchase_price":"3500.00","quantity":1,"subtotal":11500,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"11.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-09T18:16:59.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 09:50:05] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-07-16 09:50:05] production.INFO: Old stock: 11.00  
[2026-07-16 09:50:05] production.INFO: Quantity deducted: 1  
[2026-07-16 09:50:05] production.INFO: New stock: 10  
[2026-07-16 09:50:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784188204163"} 
[2026-07-16 10:10:50] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1784189451662","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":419,"product_id":419,"name":"Glucomet 500-Metformin","sku":"3056","price":"1500.00","selling_price":"1500.00","purchase_price":"450.00","quantity":2,"subtotal":3000,"product":{"id":419,"name":"Glucomet 500-Metformin","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"58.00","stock":"62.00","product_type":"Single","tax":null,"sku":"3056","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-15T16:06:14.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":660,"product_id":660,"name":"Pyridoxine HCL (Vitamin B6)","sku":"3297","price":"1000.00","selling_price":"1000.00","purchase_price":"333.00","quantity":1,"subtotal":1000,"product":{"id":660,"name":"Pyridoxine HCL (Vitamin B6)","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"7","brand_id":"7","supplier_id":null,"purchase_price":"333.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3297","image":null,"description":null,"alert_quantity":"3.00","expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-14T15:09:24.000000Z","brand":{"id":7,"name":"30MG","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":666,"product_id":666,"name":"Relcer Gel 100ml","sku":"3303","price":"11500.00","selling_price":"11500.00","purchase_price":"3500.00","quantity":1,"subtotal":11500,"product":{"id":666,"name":"Relcer Gel 100ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"11500.00","current_stock":"10.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3303","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T07:50:05.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":2,"subtotal":400,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"184.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-15T06:28:20.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 10:10:51] production.INFO: Stock deduction for product: Glucomet 500-Metformin  
[2026-07-16 10:10:51] production.INFO: Old stock: 58.00  
[2026-07-16 10:10:51] production.INFO: Quantity deducted: 2  
[2026-07-16 10:10:51] production.INFO: New stock: 56  
[2026-07-16 10:10:51] production.INFO: Stock deduction for product: Pyridoxine HCL (Vitamin B6)  
[2026-07-16 10:10:51] production.INFO: Old stock: 12.00  
[2026-07-16 10:10:51] production.INFO: Quantity deducted: 1  
[2026-07-16 10:10:51] production.INFO: New stock: 11  
[2026-07-16 10:10:51] production.INFO: Stock deduction for product: Relcer Gel 100ml  
[2026-07-16 10:10:51] production.INFO: Old stock: 10.00  
[2026-07-16 10:10:51] production.INFO: Quantity deducted: 1  
[2026-07-16 10:10:51] production.INFO: New stock: 9  
[2026-07-16 10:10:51] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-16 10:10:51] production.INFO: Old stock: 184.00  
[2026-07-16 10:10:51] production.INFO: Quantity deducted: 2  
[2026-07-16 10:10:51] production.INFO: New stock: 182  
[2026-07-16 10:10:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784189451662"} 
[2026-07-16 10:15:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784189729677","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"163.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-12T16:22:36.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 10:15:30] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-16 10:15:30] production.INFO: Old stock: 163.00  
[2026-07-16 10:15:30] production.INFO: Quantity deducted: 2  
[2026-07-16 10:15:30] production.INFO: New stock: 161  
[2026-07-16 10:15:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784189729677"} 
[2026-07-16 11:40:22] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784194821330","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":606,"product_id":606,"name":"Omezing Omeprazole","sku":"3243","price":"1000.00","selling_price":"1000.00","purchase_price":"450.00","quantity":1,"subtotal":1000,"product":{"id":606,"name":"Omezing Omeprazole","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"70.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3243","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-14T13:53:12.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4500.00","selling_price":"4500.00","purchase_price":"2409.00","quantity":1,"subtotal":4500,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"70.00","stock":"70.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-15T15:21:33.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":536,"product_id":536,"name":"MAGNESIUM TABLETS 250MG","sku":"3173","price":"1000.00","selling_price":"1000.00","purchase_price":"305.00","quantity":2,"subtotal":2000,"product":{"id":536,"name":"MAGNESIUM TABLETS 250MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"305.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"87.00","stock":"126.00","product_type":"Single","tax":null,"sku":"3173","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-15T11:31:39.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-16 11:40:22] production.INFO: Stock deduction for product: Omezing Omeprazole  
[2026-07-16 11:40:22] production.INFO: Old stock: 70.00  
[2026-07-16 11:40:22] production.INFO: Quantity deducted: 1  
[2026-07-16 11:40:22] production.INFO: New stock: 69  
[2026-07-16 11:40:22] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-16 11:40:22] production.INFO: Old stock: 70.00  
[2026-07-16 11:40:22] production.INFO: Quantity deducted: 1  
[2026-07-16 11:40:22] production.INFO: New stock: 69  
[2026-07-16 11:40:22] production.INFO: Stock deduction for product: MAGNESIUM TABLETS 250MG  
[2026-07-16 11:40:22] production.INFO: Old stock: 87.00  
[2026-07-16 11:40:22] production.INFO: Quantity deducted: 2  
[2026-07-16 11:40:22] production.INFO: New stock: 85  
[2026-07-16 11:40:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784194821330"} 
[2026-07-16 12:08:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784196519268","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":735,"product_id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","sku":"3372","price":"17000.00","selling_price":"17000.00","purchase_price":"8000.00","quantity":1,"subtotal":17000,"product":{"id":735,"name":"TRIPHEN PAEDIATRIC, 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"14","brand_id":"6","supplier_id":null,"purchase_price":"8000.00","last_purchase_price":null,"selling_price":"17000.00","current_stock":"6.01","stock":"8.01","product_type":"Single","tax":null,"sku":"3372","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-07T16:32:55.000000Z","brand":{"id":6,"name":"100ML","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 12:08:38] production.INFO: Stock deduction for product: TRIPHEN PAEDIATRIC, 100ml  
[2026-07-16 12:08:38] production.INFO: Old stock: 6.01  
[2026-07-16 12:08:38] production.INFO: Quantity deducted: 1  
[2026-07-16 12:08:38] production.INFO: New stock: 5.01  
[2026-07-16 12:08:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784196519268"} 
[2026-07-16 12:14:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784196848682","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":611,"product_id":611,"name":"OPRA TABLET (Loperamide 2mg)","sku":"3248","price":"1500.00","selling_price":"1500.00","purchase_price":"700.00","quantity":2,"subtotal":3000,"product":{"id":611,"name":"OPRA TABLET (Loperamide 2mg)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"700.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"16.00","stock":"22.00","product_type":"Single","tax":null,"sku":"3248","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-22T10:44:08.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 12:14:09] production.INFO: Stock deduction for product: OPRA TABLET (Loperamide 2mg)  
[2026-07-16 12:14:09] production.INFO: Old stock: 16.00  
[2026-07-16 12:14:09] production.INFO: Quantity deducted: 2  
[2026-07-16 12:14:09] production.INFO: New stock: 14  
[2026-07-16 12:14:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784196848682"} 
[2026-07-16 12:14:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784196868218","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"70.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T15:34:17.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 12:14:27] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-16 12:14:27] production.INFO: Old stock: 70.00  
[2026-07-16 12:14:27] production.INFO: Quantity deducted: 1  
[2026-07-16 12:14:27] production.INFO: New stock: 69  
[2026-07-16 12:14:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784196868218"} 
[2026-07-16 12:17:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784197049370","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":774,"product_id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","sku":"3411","price":"500.00","selling_price":"500.00","purchase_price":"290.00","quantity":2,"subtotal":1000,"product":{"id":774,"name":"ZANGRA-100 (Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"22","brand_id":"1","supplier_id":null,"purchase_price":"290.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"161.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3411","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T08:15:30.000000Z","brand":null,"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 12:17:28] production.INFO: Stock deduction for product: ZANGRA-100 (Sildenafil 100mg)  
[2026-07-16 12:17:28] production.INFO: Old stock: 161.00  
[2026-07-16 12:17:28] production.INFO: Quantity deducted: 2  
[2026-07-16 12:17:28] production.INFO: New stock: 159  
[2026-07-16 12:17:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784197049370"} 
[2026-07-16 12:25:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784197521464","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":269,"product_id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","sku":"0790","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":269,"name":"DYNAPAR (DICLOFANAC+PCM)TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"21.00","stock":"26.00","product_type":"Single","tax":null,"sku":"0790","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-15T12:48:36.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 12:25:20] production.INFO: Stock deduction for product: DYNAPAR (DICLOFANAC+PCM)TABLETS  
[2026-07-16 12:25:20] production.INFO: Old stock: 21.00  
[2026-07-16 12:25:20] production.INFO: Quantity deducted: 1  
[2026-07-16 12:25:20] production.INFO: New stock: 20  
[2026-07-16 12:25:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784197521464"} 
[2026-07-16 12:35:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784198154909","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":532,"product_id":532,"name":"Lysoflam Tab","sku":"3169","price":"4000.00","selling_price":"4000.00","purchase_price":"1800.00","quantity":1,"subtotal":4000,"product":{"id":532,"name":"Lysoflam Tab","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"20","supplier_id":null,"purchase_price":"1800.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"16.00","stock":"20.00","product_type":"Single","tax":null,"sku":"3169","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-25","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-12T14:39:32.000000Z","brand":{"id":20,"name":"CACHET","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 12:35:54] production.INFO: Stock deduction for product: Lysoflam Tab  
[2026-07-16 12:35:54] production.INFO: Old stock: 16.00  
[2026-07-16 12:35:54] production.INFO: Quantity deducted: 1  
[2026-07-16 12:35:54] production.INFO: New stock: 15  
[2026-07-16 12:35:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784198154909"} 
[2026-07-16 12:47:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784198843330","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":9,"subtotal":18000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"25.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-15T12:53:18.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 12:47:24] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-16 12:47:24] production.INFO: Old stock: 25.00  
[2026-07-16 12:47:24] production.INFO: Quantity deducted: 9  
[2026-07-16 12:47:24] production.INFO: New stock: 16  
[2026-07-16 12:47:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784198843330"} 
[2026-07-16 12:55:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784199302241","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","sku":"0666","price":"1000.00","selling_price":"1000.00","purchase_price":"125.00","quantity":3,"subtotal":3000,"product":{"id":47,"name":"ALBENDAZOLE TAB (ALWO 400) ONE TABLET","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"125.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"21.00","stock":"109.00","product_type":"Single","tax":null,"sku":"0666","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-02","last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-07-13T18:00:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 12:55:03] production.INFO: Stock deduction for product: ALBENDAZOLE TAB (ALWO 400) ONE TABLET  
[2026-07-16 12:55:03] production.INFO: Old stock: 21.00  
[2026-07-16 12:55:03] production.INFO: Quantity deducted: 3  
[2026-07-16 12:55:03] production.INFO: New stock: 18  
[2026-07-16 12:55:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784199302241"} 
[2026-07-16 13:05:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784199946549","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":760,"product_id":760,"name":"VOLTEM TABLET","sku":"3397","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":760,"name":"VOLTEM TABLET","business_location":"EDUC Pharmacy","unit_id":"35","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"2000.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"23.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3397","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-27T17:07:09.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 13:05:46] production.INFO: Stock deduction for product: VOLTEM TABLET  
[2026-07-16 13:05:46] production.INFO: Old stock: 23.00  
[2026-07-16 13:05:46] production.INFO: Quantity deducted: 1  
[2026-07-16 13:05:46] production.INFO: New stock: 22  
[2026-07-16 13:05:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784199946549"} 
[2026-07-16 14:06:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784203576959","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":552,"product_id":552,"name":"Metformin-Denk 500","sku":"3189","price":"7000.00","selling_price":"7000.00","purchase_price":"3400.00","quantity":1,"subtotal":7000,"product":{"id":552,"name":"Metformin-Denk 500","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"12","brand_id":"1","supplier_id":null,"purchase_price":"3400.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"19.00","stock":"31.00","product_type":"Single","tax":null,"sku":"3189","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-04","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-15T06:20:05.000000Z","brand":null,"category":{"id":12,"name":"ANTIDIABETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 14:06:16] production.INFO: Stock deduction for product: Metformin-Denk 500  
[2026-07-16 14:06:16] production.INFO: Old stock: 19.00  
[2026-07-16 14:06:16] production.INFO: Quantity deducted: 1  
[2026-07-16 14:06:16] production.INFO: New stock: 18  
[2026-07-16 14:06:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784203576959"} 
[2026-07-16 14:07:06] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1784203627159","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":110,"product_id":110,"name":"Benzathine 2.4 MU","sku":"0699","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":2,"subtotal":5000,"product":{"id":110,"name":"Benzathine 2.4 MU","business_location":"EDUC Pharmacy","unit_id":"51","category_id":"39","brand_id":"16","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0699","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-06-05T09:13:01.000000Z","brand":{"id":16,"name":"BENZA","note":null,"created_at":null,"updated_at":null},"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":633,"product_id":633,"name":"Phenoxymethylpenicillin 250mg","sku":"3270","price":"2500.00","selling_price":"2500.00","purchase_price":"1020.00","quantity":1,"subtotal":2500,"product":{"id":633,"name":"Phenoxymethylpenicillin 250mg","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"11","brand_id":"35","supplier_id":null,"purchase_price":"1020.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"7.00","stock":"50.00","product_type":"Single","tax":null,"sku":"3270","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-10T16:24:41.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"80.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-13T18:42:17.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-05T09:25:03.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 14:07:06] production.INFO: Stock deduction for product: Benzathine 2.4 MU  
[2026-07-16 14:07:06] production.INFO: Old stock: 18.00  
[2026-07-16 14:07:06] production.INFO: Quantity deducted: 2  
[2026-07-16 14:07:06] production.INFO: New stock: 16  
[2026-07-16 14:07:06] production.INFO: Stock deduction for product: Phenoxymethylpenicillin 250mg  
[2026-07-16 14:07:06] production.INFO: Old stock: 7.00  
[2026-07-16 14:07:06] production.INFO: Quantity deducted: 1  
[2026-07-16 14:07:06] production.INFO: New stock: 6  
[2026-07-16 14:07:06] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-16 14:07:06] production.INFO: Old stock: 80.00  
[2026-07-16 14:07:06] production.INFO: Quantity deducted: 1  
[2026-07-16 14:07:06] production.INFO: New stock: 79  
[2026-07-16 14:07:06] production.INFO: Stock deduction for product: Water for Injection  
[2026-07-16 14:07:06] production.INFO: Old stock: 16.00  
[2026-07-16 14:07:06] production.INFO: Quantity deducted: 1  
[2026-07-16 14:07:06] production.INFO: New stock: 15  
[2026-07-16 14:07:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784203627159"} 
[2026-07-16 14:09:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784203781846","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":189,"product_id":189,"name":"Clearvin Nasal Drops Pead","sku":"1106","price":"8500.00","selling_price":"8500.00","purchase_price":"3950.00","quantity":1,"subtotal":8500,"product":{"id":189,"name":"Clearvin Nasal Drops Pead","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1106","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-06-22T14:39:20.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 14:09:41] production.INFO: Stock deduction for product: Clearvin Nasal Drops Pead  
[2026-07-16 14:09:41] production.INFO: Old stock: 12.00  
[2026-07-16 14:09:41] production.INFO: Quantity deducted: 1  
[2026-07-16 14:09:41] production.INFO: New stock: 11  
[2026-07-16 14:09:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784203781846"} 
[2026-07-16 15:00:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784206810034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":523,"product_id":523,"name":"LONART DS","sku":"3160","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":523,"name":"LONART DS","business_location":"EDUC Pharmacy","unit_id":"63","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"15.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3160","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-15T16:09:33.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 15:00:10] production.INFO: Stock deduction for product: LONART DS  
[2026-07-16 15:00:10] production.INFO: Old stock: 15.00  
[2026-07-16 15:00:10] production.INFO: Quantity deducted: 1  
[2026-07-16 15:00:10] production.INFO: New stock: 14  
[2026-07-16 15:00:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784206810034"} 
[2026-07-16 15:00:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784206852762","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-16T10:47:24.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 15:00:51] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-16 15:00:51] production.INFO: Old stock: 16.00  
[2026-07-16 15:00:51] production.INFO: Quantity deducted: 1  
[2026-07-16 15:00:51] production.INFO: New stock: 15  
[2026-07-16 15:00:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784206852762"} 
[2026-07-16 15:26:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784208387532","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":429,"product_id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","sku":"3066","price":"8000.00","selling_price":"8000.00","purchase_price":"5000.00","quantity":1,"subtotal":8000,"product":{"id":429,"name":"GOOD MORNING (Lung Tonic), 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"17","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"12.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3066","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-06T09:52:42.000000Z","brand":{"id":17,"name":"BETA HEALTHCARE","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 15:26:27] production.INFO: Stock deduction for product: GOOD MORNING (Lung Tonic), 60ml  
[2026-07-16 15:26:27] production.INFO: Old stock: 12.00  
[2026-07-16 15:26:27] production.INFO: Quantity deducted: 1  
[2026-07-16 15:26:27] production.INFO: New stock: 11  
[2026-07-16 15:26:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784208387532"} 
[2026-07-16 15:37:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784209026509","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":2,"subtotal":9000,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"69.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T10:14:27.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 15:37:06] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-16 15:37:06] production.INFO: Old stock: 69.00  
[2026-07-16 15:37:06] production.INFO: Quantity deducted: 2  
[2026-07-16 15:37:06] production.INFO: New stock: 67  
[2026-07-16 15:37:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784209026509"} 
[2026-07-16 15:48:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784209680866","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"67.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T13:37:06.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 15:48:01] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-16 15:48:01] production.INFO: Old stock: 67.00  
[2026-07-16 15:48:01] production.INFO: Quantity deducted: 1  
[2026-07-16 15:48:01] production.INFO: New stock: 66  
[2026-07-16 15:48:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784209680866"} 
[2026-07-16 15:51:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784209860585","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":642,"product_id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","sku":"3279","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":642,"name":"POLYGEL (MAGNESIUM TRIS) Tablets","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"6","brand_id":"35","supplier_id":null,"purchase_price":"675.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"80.00","stock":"103.00","product_type":"Single","tax":null,"sku":"3279","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-15T14:08:29.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 15:51:00] production.INFO: Stock deduction for product: POLYGEL (MAGNESIUM TRIS) Tablets  
[2026-07-16 15:51:00] production.INFO: Old stock: 80.00  
[2026-07-16 15:51:00] production.INFO: Quantity deducted: 1  
[2026-07-16 15:51:00] production.INFO: New stock: 79  
[2026-07-16 15:51:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784209860585"} 
[2026-07-16 15:58:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784210334144","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"103.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-15T14:08:29.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 15:58:54] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-16 15:58:54] production.INFO: Old stock: 103.00  
[2026-07-16 15:58:54] production.INFO: Quantity deducted: 1  
[2026-07-16 15:58:54] production.INFO: New stock: 102  
[2026-07-16 15:58:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784210334144"} 
[2026-07-16 16:34:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784212448031","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":992,"product_id":992,"name":"Nifedipine Extended Release  20mg","sku":"PRD-00992","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":3,"subtotal":6000,"product":{"id":992,"name":"Nifedipine Extended Release  20mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00992","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-07-12","created_at":"2026-07-12T14:52:48.000000Z","updated_at":"2026-07-12T14:52:48.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 16:34:08] production.INFO: Stock deduction for product: Nifedipine Extended Release  20mg  
[2026-07-16 16:34:08] production.INFO: Old stock: 10.00  
[2026-07-16 16:34:08] production.INFO: Quantity deducted: 3  
[2026-07-16 16:34:08] production.INFO: New stock: 7  
[2026-07-16 16:34:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784212448031"} 
[2026-07-16 16:52:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784213522443","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":740,"product_id":740,"name":"Tumbocid","sku":"3377","price":"150.00","selling_price":"150.00","purchase_price":"76.00","quantity":3,"subtotal":450,"product":{"id":740,"name":"Tumbocid","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"76.00","last_purchase_price":null,"selling_price":"150.00","current_stock":"22.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3377","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-18T14:37:31.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 16:52:03] production.INFO: Stock deduction for product: Tumbocid  
[2026-07-16 16:52:03] production.INFO: Old stock: 22.00  
[2026-07-16 16:52:03] production.INFO: Quantity deducted: 3  
[2026-07-16 16:52:03] production.INFO: New stock: 19  
[2026-07-16 16:52:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784213522443"} 
[2026-07-16 16:53:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784213633242","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":817,"product_id":817,"name":"Fluconazole Capsules -Flucoz-200","sku":"PRD-00817","price":"8500.00","selling_price":"8500.00","purchase_price":"4200.00","quantity":1,"subtotal":8500,"product":{"id":817,"name":"Fluconazole Capsules -Flucoz-200","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4200.00","last_purchase_price":"4200.00","selling_price":"8500.00","current_stock":"26.00","stock":"30.00","product_type":"Single","tax":null,"sku":"PRD-00817","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":"2026-03-14","created_at":"2026-03-14T11:46:36.000000Z","updated_at":"2026-07-09T17:10:57.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 16:53:54] production.INFO: Stock deduction for product: Fluconazole Capsules -Flucoz-200  
[2026-07-16 16:53:54] production.INFO: Old stock: 26.00  
[2026-07-16 16:53:54] production.INFO: Quantity deducted: 1  
[2026-07-16 16:53:54] production.INFO: New stock: 25  
[2026-07-16 16:53:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784213633242"} 
[2026-07-16 16:58:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784213922520","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":407,"product_id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","sku":"3044","price":"3000.00","selling_price":"3000.00","purchase_price":"1100.00","quantity":1,"subtotal":3000,"product":{"id":407,"name":"Gentamcycin Eye/Ear Drop 5ml","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"6.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3044","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-08T08:28:18.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"102.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-16T13:58:54.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 16:58:43] production.INFO: Stock deduction for product: Gentamcycin Eye/Ear Drop 5ml  
[2026-07-16 16:58:43] production.INFO: Old stock: 6.00  
[2026-07-16 16:58:43] production.INFO: Quantity deducted: 1  
[2026-07-16 16:58:43] production.INFO: New stock: 5  
[2026-07-16 16:58:43] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-16 16:58:43] production.INFO: Old stock: 102.00  
[2026-07-16 16:58:43] production.INFO: Quantity deducted: 1  
[2026-07-16 16:58:43] production.INFO: New stock: 101  
[2026-07-16 16:58:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784213922520"} 
[2026-07-16 17:00:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784214015816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":804,"product_id":804,"name":"COTTON WOOL 125G","sku":"0757","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":804,"name":"COTTON WOOL 125G","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"5000.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"0757","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-05-11T13:51:49.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:00:17] production.INFO: Stock deduction for product: COTTON WOOL 125G  
[2026-07-16 17:00:17] production.INFO: Old stock: 8.00  
[2026-07-16 17:00:17] production.INFO: Quantity deducted: 1  
[2026-07-16 17:00:17] production.INFO: New stock: 7  
[2026-07-16 17:00:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784214015816"} 
[2026-07-16 17:01:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784214102704","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"101.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-16T14:58:43.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:01:43] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-16 17:01:43] production.INFO: Old stock: 101.00  
[2026-07-16 17:01:43] production.INFO: Quantity deducted: 1  
[2026-07-16 17:01:43] production.INFO: New stock: 100  
[2026-07-16 17:01:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784214102704"} 
[2026-07-16 17:03:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784214200448","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":6,"subtotal":1800,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"213.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T12:18:37.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 17:03:20] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-16 17:03:20] production.INFO: Old stock: 213.00  
[2026-07-16 17:03:20] production.INFO: Quantity deducted: 6  
[2026-07-16 17:03:20] production.INFO: New stock: 207  
[2026-07-16 17:03:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784214200448"} 
[2026-07-16 17:09:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784214577990","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":824,"product_id":824,"name":"Nifedipine Denk 20mg","sku":"PRD-00824","price":"10000.00","selling_price":"10000.00","purchase_price":"4900.00","quantity":1,"subtotal":10000,"product":{"id":824,"name":"Nifedipine Denk 20mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4900.00","last_purchase_price":"4900.00","selling_price":"10000.00","current_stock":"15.00","stock":"22.00","product_type":"Single","tax":null,"sku":"PRD-00824","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":"2026-03-24","created_at":"2026-03-24T08:48:47.000000Z","updated_at":"2026-07-12T16:21:16.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 17:09:38] production.INFO: Stock deduction for product: Nifedipine Denk 20mg  
[2026-07-16 17:09:38] production.INFO: Old stock: 15.00  
[2026-07-16 17:09:38] production.INFO: Quantity deducted: 1  
[2026-07-16 17:09:38] production.INFO: New stock: 14  
[2026-07-16 17:09:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784214577990"} 
[2026-07-16 17:14:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784214853109","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"36.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T14:33:54.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:14:15] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-16 17:14:15] production.INFO: Old stock: 36.00  
[2026-07-16 17:14:15] production.INFO: Quantity deducted: 1  
[2026-07-16 17:14:15] production.INFO: New stock: 35  
[2026-07-16 17:14:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784214853109"} 
[2026-07-16 17:15:26] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784214926268","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":415,"product_id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","sku":"3052","price":"5000.00","selling_price":"5000.00","purchase_price":"2700.00","quantity":1,"subtotal":5000,"product":{"id":415,"name":"Glam & Glory (Snail White Lotion) 25ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"27","brand_id":"1","supplier_id":null,"purchase_price":"2700.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3052","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-06-29T14:42:04.000000Z","brand":null,"category":{"id":27,"name":"COSMETCS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":909,"product_id":909,"name":"Doxy cycline (Doxy Capsules)","sku":"PRD-00909","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":909,"name":"Doxy cycline (Doxy Capsules)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00909","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-06-12","created_at":"2026-06-12T14:10:56.000000Z","updated_at":"2026-07-14T18:29:56.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":878,"product_id":878,"name":"Chia Seeds 125g","sku":"PRD-00878","price":"9000.00","selling_price":"9000.00","purchase_price":"4500.00","quantity":1,"subtotal":9000,"product":{"id":878,"name":"Chia Seeds 125g","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"4500.00","last_purchase_price":"4500.00","selling_price":"9000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00878","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-05-15","created_at":"2026-05-15T09:31:50.000000Z","updated_at":"2026-06-17T17:11:45.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 17:15:26] production.INFO: Stock deduction for product: Glam & Glory (Snail White Lotion) 25ml  
[2026-07-16 17:15:26] production.INFO: Old stock: 4.00  
[2026-07-16 17:15:26] production.INFO: Quantity deducted: 1  
[2026-07-16 17:15:26] production.INFO: New stock: 3  
[2026-07-16 17:15:26] production.INFO: Stock deduction for product: Doxy cycline (Doxy Capsules)  
[2026-07-16 17:15:26] production.INFO: Old stock: 10.00  
[2026-07-16 17:15:26] production.INFO: Quantity deducted: 1  
[2026-07-16 17:15:26] production.INFO: New stock: 9  
[2026-07-16 17:15:26] production.INFO: Stock deduction for product: Chia Seeds 125g  
[2026-07-16 17:15:26] production.INFO: Old stock: 7.00  
[2026-07-16 17:15:26] production.INFO: Quantity deducted: 1  
[2026-07-16 17:15:26] production.INFO: New stock: 6  
[2026-07-16 17:15:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784214926268"} 
[2026-07-16 17:27:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784215659506","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-16T13:00:51.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:27:39] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-16 17:27:39] production.INFO: Old stock: 15.00  
[2026-07-16 17:27:39] production.INFO: Quantity deducted: 1  
[2026-07-16 17:27:39] production.INFO: New stock: 14  
[2026-07-16 17:27:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784215659506"} 
[2026-07-16 17:39:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784216366030","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":222,"product_id":222,"name":"DAZOLE-B CREAM, 20g","sku":"0771","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":222,"name":"DAZOLE-B CREAM, 20g","business_location":"EDUC Pharmacy","unit_id":"25","category_id":"45","brand_id":"31","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"17.00","stock":"17.00","product_type":"Single","tax":null,"sku":"0771","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-06-22T14:43:21.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:39:27] production.INFO: Stock deduction for product: DAZOLE-B CREAM, 20g  
[2026-07-16 17:39:27] production.INFO: Old stock: 17.00  
[2026-07-16 17:39:27] production.INFO: Quantity deducted: 1  
[2026-07-16 17:39:27] production.INFO: New stock: 16  
[2026-07-16 17:39:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784216366030"} 
[2026-07-16 17:42:48] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784216568214","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":122,"product_id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","sku":"0708","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":122,"name":"BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"36","brand_id":"19","supplier_id":null,"purchase_price":"2750.00","last_purchase_price":null,"selling_price":"5500.00","current_stock":"10.00","stock":"14.00","product_type":"Single","tax":null,"sku":"0708","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-27","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-13T16:20:28.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":476,"product_id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","sku":"3113","price":"3000.00","selling_price":"3000.00","purchase_price":"1400.00","quantity":1,"subtotal":3000,"product":{"id":476,"name":"KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"1400.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"13.00","stock":"15.00","product_type":"Single","tax":null,"sku":"3113","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-14T16:49:55.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 17:42:48] production.INFO: Stock deduction for product: BG-SOL CREAM (Clobetasol Propionate 0.05% w/w), 30g  
[2026-07-16 17:42:48] production.INFO: Old stock: 10.00  
[2026-07-16 17:42:48] production.INFO: Quantity deducted: 1  
[2026-07-16 17:42:48] production.INFO: New stock: 9  
[2026-07-16 17:42:48] production.INFO: Stock deduction for product: KELVIN SOLUTION (Paracetamol 120mg/5ml), 100ml  
[2026-07-16 17:42:48] production.INFO: Old stock: 13.00  
[2026-07-16 17:42:48] production.INFO: Quantity deducted: 1  
[2026-07-16 17:42:48] production.INFO: New stock: 12  
[2026-07-16 17:42:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784216568214"} 
[2026-07-16 17:47:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784216838685","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":872,"product_id":872,"name":"Ketoconazole (Ketojohn) 200mg","sku":"PRD-00872","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":872,"name":"Ketoconazole (Ketojohn) 200mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","last_purchase_price":"3500.00","selling_price":"7000.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00872","image":null,"description":null,"alert_quantity":"2.00","expiry_date":"2027-10-31","last_purchase_date":"2026-05-09","created_at":"2026-05-09T10:25:57.000000Z","updated_at":"2026-05-09T10:25:57.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:47:18] production.INFO: Stock deduction for product: Ketoconazole (Ketojohn) 200mg  
[2026-07-16 17:47:18] production.INFO: Old stock: 30.00  
[2026-07-16 17:47:18] production.INFO: Quantity deducted: 1  
[2026-07-16 17:47:18] production.INFO: New stock: 29  
[2026-07-16 17:47:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784216838685"} 
[2026-07-16 17:57:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784217445390","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":250,"product_id":250,"name":"Diclofenac (Denk)","sku":"1332","price":"10000.00","selling_price":"10000.00","purchase_price":"4900.00","quantity":1,"subtotal":10000,"product":{"id":250,"name":"Diclofenac (Denk)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"18","brand_id":"1","supplier_id":null,"purchase_price":"4900.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1332","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-05-28T08:06:43.000000Z","brand":null,"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 17:57:27] production.INFO: Stock deduction for product: Diclofenac (Denk)  
[2026-07-16 17:57:27] production.INFO: Old stock: 8.00  
[2026-07-16 17:57:27] production.INFO: Quantity deducted: 1  
[2026-07-16 17:57:27] production.INFO: New stock: 7  
[2026-07-16 17:57:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784217445390"} 
[2026-07-16 18:20:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784218843194","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":2,"subtotal":4000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"26.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-15T18:36:24.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 18:20:46] production.INFO: Stock deduction for product: Iduplus  
[2026-07-16 18:20:46] production.INFO: Old stock: 26.00  
[2026-07-16 18:20:46] production.INFO: Quantity deducted: 2  
[2026-07-16 18:20:46] production.INFO: New stock: 24  
[2026-07-16 18:20:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784218843194"} 
[2026-07-16 18:48:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784220496335","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"BONNISAN","sku":"1052","price":"20000.00","selling_price":"20000.00","purchase_price":"10500.00","quantity":1,"subtotal":20000,"product":{"id":136,"name":"BONNISAN","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"10500.00","last_purchase_price":null,"selling_price":"20000.00","current_stock":"5.00","stock":"6.00","product_type":"Single","tax":null,"sku":"1052","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-18","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-03T16:57:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 18:48:19] production.INFO: Stock deduction for product: BONNISAN  
[2026-07-16 18:48:19] production.INFO: Old stock: 5.00  
[2026-07-16 18:48:19] production.INFO: Quantity deducted: 1  
[2026-07-16 18:48:19] production.INFO: New stock: 4  
[2026-07-16 18:48:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784220496335"} 
[2026-07-16 18:48:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784220512384","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":658,"product_id":658,"name":"Promethazine Syrup","sku":"3295","price":"8000.00","selling_price":"8000.00","purchase_price":"3950.00","quantity":1,"subtotal":8000,"product":{"id":658,"name":"Promethazine Syrup","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8000.00","current_stock":"49.00","stock":"59.00","product_type":"Single","tax":null,"sku":"3295","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-15T13:48:27.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":247,"product_id":247,"name":"Diazepam 5mg (Calm-5)","sku":"1274","price":"2000.00","selling_price":"2000.00","purchase_price":"250.00","quantity":1,"subtotal":2000,"product":{"id":247,"name":"Diazepam 5mg (Calm-5)","business_location":"EDUC Pharmacy","unit_id":"52","category_id":"24","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1274","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:50:59.000000Z","updated_at":"2026-07-16T15:27:39.000000Z","brand":null,"category":{"id":24,"name":"CNS DRUGS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 18:48:34] production.INFO: Stock deduction for product: Promethazine Syrup  
[2026-07-16 18:48:34] production.INFO: Old stock: 49.00  
[2026-07-16 18:48:34] production.INFO: Quantity deducted: 1  
[2026-07-16 18:48:34] production.INFO: New stock: 48  
[2026-07-16 18:48:34] production.INFO: Stock deduction for product: Diazepam 5mg (Calm-5)  
[2026-07-16 18:48:34] production.INFO: Old stock: 14.00  
[2026-07-16 18:48:34] production.INFO: Quantity deducted: 1  
[2026-07-16 18:48:34] production.INFO: New stock: 13  
[2026-07-16 18:48:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784220512384"} 
[2026-07-16 19:19:34] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784222370341","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","sku":"0679","price":"4500.00","selling_price":"4500.00","purchase_price":"2409.00","quantity":1,"subtotal":4500,"product":{"id":67,"name":"AMOXICILLIN 250MG  Pack of 30 Cap","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"2409.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"69.00","stock":"70.00","product_type":"Single","tax":null,"sku":"0679","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-16T09:40:22.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"24.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-14T15:09:24.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 19:19:34] production.INFO: Stock deduction for product: AMOXICILLIN 250MG  Pack of 30 Cap  
[2026-07-16 19:19:34] production.INFO: Old stock: 69.00  
[2026-07-16 19:19:34] production.INFO: Quantity deducted: 1  
[2026-07-16 19:19:34] production.INFO: New stock: 68  
[2026-07-16 19:19:34] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-16 19:19:34] production.INFO: Old stock: 24.00  
[2026-07-16 19:19:34] production.INFO: Quantity deducted: 1  
[2026-07-16 19:19:34] production.INFO: New stock: 23  
[2026-07-16 19:19:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784222370341"} 
[2026-07-16 19:20:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784222445821","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":119,"product_id":119,"name":"BETASOL CREAM, 15g","sku":"0706","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":119,"name":"BETASOL CREAM, 15g","business_location":"EDUC Pharmacy","unit_id":"26","category_id":"36","brand_id":"12","supplier_id":null,"purchase_price":"1500.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"11.00","stock":"12.00","product_type":"Single","tax":null,"sku":"0706","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-10T12:32:44.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 19:20:48] production.INFO: Stock deduction for product: BETASOL CREAM, 15g  
[2026-07-16 19:20:48] production.INFO: Old stock: 11.00  
[2026-07-16 19:20:48] production.INFO: Quantity deducted: 1  
[2026-07-16 19:20:48] production.INFO: New stock: 10  
[2026-07-16 19:20:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784222445821"} 
[2026-07-16 19:39:32] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784223570862","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":440,"product_id":440,"name":"HEDAX","sku":"3077","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":5,"subtotal":2000,"product":{"id":440,"name":"HEDAX","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"149.00","stock":"172.00","product_type":"Single","tax":null,"sku":"3077","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T12:17:37.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"182.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-16T08:10:51.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 19:39:32] production.INFO: Stock deduction for product: HEDAX  
[2026-07-16 19:39:32] production.INFO: Old stock: 149.00  
[2026-07-16 19:39:32] production.INFO: Quantity deducted: 5  
[2026-07-16 19:39:32] production.INFO: New stock: 144  
[2026-07-16 19:39:33] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-16 19:39:33] production.INFO: Old stock: 182.00  
[2026-07-16 19:39:33] production.INFO: Quantity deducted: 1  
[2026-07-16 19:39:33] production.INFO: New stock: 181  
[2026-07-16 19:39:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784223570862"} 
[2026-07-16 19:51:30] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784224289785","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"4.00","stock":"7.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-08T12:58:54.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"12.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-03T14:50:11.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"24.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-16T16:20:46.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 19:51:30] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-07-16 19:51:30] production.INFO: Old stock: 4.00  
[2026-07-16 19:51:30] production.INFO: Quantity deducted: 1  
[2026-07-16 19:51:30] production.INFO: New stock: 3  
[2026-07-16 19:51:30] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-07-16 19:51:30] production.INFO: Old stock: 12.00  
[2026-07-16 19:51:30] production.INFO: Quantity deducted: 1  
[2026-07-16 19:51:30] production.INFO: New stock: 11  
[2026-07-16 19:51:30] production.INFO: Stock deduction for product: Iduplus  
[2026-07-16 19:51:30] production.INFO: Old stock: 24.00  
[2026-07-16 19:51:30] production.INFO: Quantity deducted: 1  
[2026-07-16 19:51:30] production.INFO: New stock: 23  
[2026-07-16 19:51:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784224289785"} 
[2026-07-16 19:51:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784224303008","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"99.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-14T09:04:43.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 19:51:42] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-16 19:51:42] production.INFO: Old stock: 99.00  
[2026-07-16 19:51:42] production.INFO: Quantity deducted: 1  
[2026-07-16 19:51:42] production.INFO: New stock: 98  
[2026-07-16 19:51:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784224303008"} 
[2026-07-16 19:56:27] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784224587905","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":33,"product_id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","sku":"1042","price":"16000.00","selling_price":"16000.00","purchase_price":"8500.00","quantity":1,"subtotal":16000,"product":{"id":33,"name":"ACNESOL CREAM (Tretinoin 0.05% w/w), 25g","business_location":"EDUC Pharmacy","unit_id":"30","category_id":"45","brand_id":"50","supplier_id":null,"purchase_price":"8500.00","last_purchase_price":null,"selling_price":"16000.00","current_stock":"4.00","stock":"7.00","product_type":"Single","tax":null,"sku":"1042","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-16T17:55:47.000000Z","brand":{"id":50,"name":"LNCN","note":null,"created_at":null,"updated_at":null},"category":{"id":45,"name":"SKIN CONDITIONS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":193,"product_id":193,"name":"CLONEM G (Triple Action Cream), 30g","sku":"1057","price":"5000.00","selling_price":"5000.00","purchase_price":"1333.00","quantity":1,"subtotal":5000,"product":{"id":193,"name":"CLONEM G (Triple Action Cream), 30g","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"36","brand_id":"3","supplier_id":null,"purchase_price":"1333.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"12.00","stock":"17.00","product_type":"Single","tax":null,"sku":"1057","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-10","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-16T17:55:47.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"24.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-16T17:55:47.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-16 19:56:27] production.INFO: Stock deduction for product: ACNESOL CREAM (Tretinoin 0.05% w/w), 25g  
[2026-07-16 19:56:27] production.INFO: Old stock: 4.00  
[2026-07-16 19:56:27] production.INFO: Quantity deducted: 1  
[2026-07-16 19:56:27] production.INFO: New stock: 3  
[2026-07-16 19:56:27] production.INFO: Stock deduction for product: CLONEM G (Triple Action Cream), 30g  
[2026-07-16 19:56:27] production.INFO: Old stock: 12.00  
[2026-07-16 19:56:27] production.INFO: Quantity deducted: 1  
[2026-07-16 19:56:27] production.INFO: New stock: 11  
[2026-07-16 19:56:27] production.INFO: Stock deduction for product: Iduplus  
[2026-07-16 19:56:27] production.INFO: Old stock: 24.00  
[2026-07-16 19:56:27] production.INFO: Quantity deducted: 1  
[2026-07-16 19:56:27] production.INFO: New stock: 23  
[2026-07-16 19:56:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784224587905"} 
[2026-07-16 20:29:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784226582251","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":448,"product_id":448,"name":"HIV Test kit","sku":"3085","price":"11000.00","selling_price":"11000.00","purchase_price":"6000.00","quantity":1,"subtotal":11000,"product":{"id":448,"name":"HIV Test kit","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"6000.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"24.00","stock":"26.00","product_type":"Single","tax":null,"sku":"3085","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-14T17:30:50.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-16 20:29:42] production.INFO: Stock deduction for product: HIV Test kit  
[2026-07-16 20:29:42] production.INFO: Old stock: 24.00  
[2026-07-16 20:29:42] production.INFO: Quantity deducted: 1  
[2026-07-16 20:29:42] production.INFO: New stock: 23  
[2026-07-16 20:29:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784226582251"} 
[2026-07-16 20:40:17] production.INFO: Stock Adjustment - Initial State {"product_id":"147","previous_quantity":"38.00","previous_selling_price":"300.00","validated_data":{"product_id":"147","adjustment_type":"add","quantity":"50","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-16"}} 
[2026-07-16 20:40:17] production.INFO: Stock Adjustment - After Quantity Save {"product_id":147,"new_quantity":88.0,"current_stock":88.0,"changes_made":"Quantity adjusted"} 
[2026-07-16 20:40:23] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784227222714","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"66.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T13:48:01.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"147.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T15:07:47.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-16 20:40:23] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-16 20:40:23] production.INFO: Old stock: 66.00  
[2026-07-16 20:40:23] production.INFO: Quantity deducted: 1  
[2026-07-16 20:40:23] production.INFO: New stock: 65  
[2026-07-16 20:40:23] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-16 20:40:23] production.INFO: Old stock: 147.00  
[2026-07-16 20:40:23] production.INFO: Quantity deducted: 1  
[2026-07-16 20:40:23] production.INFO: New stock: 146  
[2026-07-16 20:40:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784227222714"} 
[2026-07-16 20:50:14] production.INFO: Stock Adjustment - Initial State {"product_id":"689","previous_quantity":"2.00","previous_selling_price":"1000.00","validated_data":{"product_id":"689","adjustment_type":"add","quantity":"18","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-16"}} 
[2026-07-16 20:50:14] production.INFO: Stock Adjustment - After Quantity Save {"product_id":689,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-16 20:51:23] production.INFO: Stock Adjustment - Initial State {"product_id":"706","previous_quantity":"0.00","previous_selling_price":"4000.00","validated_data":{"product_id":"706","adjustment_type":"add","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-16"}} 
[2026-07-16 20:51:23] production.INFO: Stock Adjustment - After Quantity Save {"product_id":706,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-16 20:52:07] production.INFO: Stock Adjustment - Initial State {"product_id":"857","previous_quantity":"2.00","previous_selling_price":"3000.00","validated_data":{"product_id":"857","adjustment_type":"add","quantity":"12","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-16"}} 
[2026-07-16 20:52:07] production.INFO: Stock Adjustment - After Quantity Save {"product_id":857,"new_quantity":14.0,"current_stock":14.0,"changes_made":"Quantity adjusted"} 
[2026-07-16 20:52:46] production.INFO: Stock Adjustment - Initial State {"product_id":"699","previous_quantity":"1.00","previous_selling_price":"4000.00","validated_data":{"product_id":"699","adjustment_type":"add","quantity":"18","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-16"}} 
[2026-07-16 20:52:46] production.INFO: Stock Adjustment - After Quantity Save {"product_id":699,"new_quantity":19.0,"current_stock":19.0,"changes_made":"Quantity adjusted"} 
[2026-07-16 20:56:48] production.INFO: Stock Adjustment - Initial State {"product_id":"558","previous_quantity":"0.00","previous_selling_price":"1000.00","validated_data":{"product_id":"558","adjustment_type":"add","quantity":"99","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-16"}} 
[2026-07-16 20:56:48] production.INFO: Stock Adjustment - After Quantity Save {"product_id":558,"new_quantity":99.0,"current_stock":99.0,"changes_made":"Quantity adjusted"} 
[2026-07-17 07:46:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784267204057","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"65.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T18:40:23.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 07:46:44] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-17 07:46:44] production.INFO: Old stock: 65.00  
[2026-07-17 07:46:44] production.INFO: Quantity deducted: 1  
[2026-07-17 07:46:44] production.INFO: New stock: 64  
[2026-07-17 07:46:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784267204057"} 
[2026-07-17 08:10:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784268644049","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"98.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T17:51:42.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 08:10:45] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-17 08:10:45] production.INFO: Old stock: 98.00  
[2026-07-17 08:10:45] production.INFO: Quantity deducted: 1  
[2026-07-17 08:10:45] production.INFO: New stock: 97  
[2026-07-17 08:10:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784268644049"} 
[2026-07-17 09:13:19] production.INFO: Finalize sale attempt {"cart_items":4,"request_data":{"invoice_no":"INV-1784272399084","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":42,"product_id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","sku":"0690","price":"6000.00","selling_price":"6000.00","purchase_price":"2950.00","quantity":1,"subtotal":6000,"product":{"id":42,"name":"AGYCIN (Azithromycin 40mg/ml Susp.), 15ml","business_location":"EDUC Pharmacy","unit_id":"24","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2950.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0690","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-09","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-09T19:45:49.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":917,"product_id":917,"name":"Prednisolone Solution","sku":"PRD-00917","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":917,"name":"Prednisolone Solution","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00917","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-06-26","created_at":"2026-06-26T18:13:51.000000Z","updated_at":"2026-06-26T18:47:48.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":144,"product_id":144,"name":"CACHMONT-LC SYRUP, 60ml","sku":"0714","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":144,"name":"CACHMONT-LC SYRUP, 60ml","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"21","supplier_id":null,"purchase_price":"3500.00","last_purchase_price":null,"selling_price":"7000.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0714","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-24","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-06-27T16:07:35.000000Z","brand":{"id":21,"name":"CACHMAX","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":189,"product_id":189,"name":"Clearvin Nasal Drops Pead","sku":"1106","price":"8500.00","selling_price":"8500.00","purchase_price":"3950.00","quantity":1,"subtotal":8500,"product":{"id":189,"name":"Clearvin Nasal Drops Pead","business_location":"EDUC Pharmacy","unit_id":"15","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"3950.00","last_purchase_price":null,"selling_price":"8500.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1106","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-16T12:09:41.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":17000},{"method":"airtel_money","amount":10500}]}} 
[2026-07-17 09:14:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784272448492","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":557,"product_id":557,"name":"METHYLATED SPIRIT 50ML","sku":"3194","price":"2500.00","selling_price":"2500.00","purchase_price":"1200.00","quantity":1,"subtotal":2500,"product":{"id":557,"name":"METHYLATED SPIRIT 50ML","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"1200.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"13.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3194","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-01","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-15T17:08:52.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 09:14:08] production.INFO: Stock deduction for product: METHYLATED SPIRIT 50ML  
[2026-07-17 09:14:08] production.INFO: Old stock: 13.00  
[2026-07-17 09:14:08] production.INFO: Quantity deducted: 1  
[2026-07-17 09:14:08] production.INFO: New stock: 12  
[2026-07-17 09:14:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784272448492"} 
[2026-07-17 09:42:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784274136835","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":213,"product_id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","sku":"0808","price":"3500.00","selling_price":"3500.00","purchase_price":"1900.00","quantity":4,"subtotal":14000,"product":{"id":213,"name":"DAWA-FLOX (Flucloxacillin 250mg)","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"11","brand_id":"31","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"34.00","stock":"34.00","product_type":"Single","tax":null,"sku":"0808","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-12T14:46:50.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-17 09:42:17] production.INFO: Stock deduction for product: DAWA-FLOX (Flucloxacillin 250mg)  
[2026-07-17 09:42:17] production.INFO: Old stock: 34.00  
[2026-07-17 09:42:17] production.INFO: Quantity deducted: 4  
[2026-07-17 09:42:17] production.INFO: New stock: 30  
[2026-07-17 09:42:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784274136835"} 
[2026-07-17 10:00:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784275212773","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":834,"product_id":834,"name":"Insulin Syring","sku":"PRD-00834","price":"500.00","selling_price":"500.00","purchase_price":"150.00","quantity":5,"subtotal":2500,"product":{"id":834,"name":"Insulin Syring","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"500.00","current_stock":"80.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00834","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-13","created_at":"2026-04-13T11:58:22.000000Z","updated_at":"2026-07-15T08:32:58.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 10:00:13] production.INFO: Stock deduction for product: Insulin Syring  
[2026-07-17 10:00:13] production.INFO: Old stock: 80.00  
[2026-07-17 10:00:13] production.INFO: Quantity deducted: 5  
[2026-07-17 10:00:13] production.INFO: New stock: 75  
[2026-07-17 10:00:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784275212773"} 
[2026-07-17 10:07:54] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784275673986","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-07-09T16:31:11.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":623,"product_id":623,"name":"Panadol Extra","sku":"3260","price":"400.00","selling_price":"400.00","purchase_price":"190.00","quantity":2,"subtotal":800,"product":{"id":623,"name":"Panadol Extra","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"190.00","last_purchase_price":null,"selling_price":"400.00","current_stock":"141.00","stock":"164.00","product_type":"Single","tax":null,"sku":"3260","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-30","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T18:45:32.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":3,"subtotal":600,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"181.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-16T17:39:33.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 10:07:54] production.INFO: Stock deduction for product: Active C  
[2026-07-17 10:07:54] production.INFO: Old stock: 30.00  
[2026-07-17 10:07:54] production.INFO: Quantity deducted: 1  
[2026-07-17 10:07:54] production.INFO: New stock: 29  
[2026-07-17 10:07:54] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-17 10:07:54] production.INFO: Old stock: 141.00  
[2026-07-17 10:07:54] production.INFO: Quantity deducted: 2  
[2026-07-17 10:07:54] production.INFO: New stock: 139  
[2026-07-17 10:07:54] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-17 10:07:54] production.INFO: Old stock: 181.00  
[2026-07-17 10:07:54] production.INFO: Quantity deducted: 3  
[2026-07-17 10:07:54] production.INFO: New stock: 178  
[2026-07-17 10:07:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784275673986"} 
[2026-07-17 10:15:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784276127728","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":28,"product_id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","sku":"0660","price":"10000.00","selling_price":"10000.00","purchase_price":"5050.00","quantity":1,"subtotal":10000,"product":{"id":28,"name":"ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"5050.00","last_purchase_price":null,"selling_price":"10000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"0660","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-14T13:48:06.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 10:15:29] production.INFO: Stock deduction for product: ACEPAR MR (ACECLOFENAC 100MG/PARACETAMOL 500MG/CHLORZOXAZONE 375MG) TABLETS  
[2026-07-17 10:15:29] production.INFO: Old stock: 13.00  
[2026-07-17 10:15:29] production.INFO: Quantity deducted: 1  
[2026-07-17 10:15:29] production.INFO: New stock: 12  
[2026-07-17 10:15:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784276127728"} 
[2026-07-17 10:51:58] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784278317323","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":711,"product_id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","sku":"3348","price":"1500.00","selling_price":"1500.00","purchase_price":"720.00","quantity":1,"subtotal":1500,"product":{"id":711,"name":"Super Apeti Tablets 20T (BOX PRICE)","business_location":"EDUC Pharmacy","unit_id":"56","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"720.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3348","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T07:58:28.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"215.00","stock":"216.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-14T14:37:40.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 10:51:58] production.INFO: Stock deduction for product: Super Apeti Tablets 20T (BOX PRICE)  
[2026-07-17 10:51:58] production.INFO: Old stock: 24.00  
[2026-07-17 10:51:58] production.INFO: Quantity deducted: 1  
[2026-07-17 10:51:58] production.INFO: New stock: 23  
[2026-07-17 10:51:58] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-07-17 10:51:58] production.INFO: Old stock: 215.00  
[2026-07-17 10:51:58] production.INFO: Quantity deducted: 1  
[2026-07-17 10:51:58] production.INFO: New stock: 214  
[2026-07-17 10:51:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784278317323"} 
[2026-07-17 11:12:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784279563021","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"64.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-17T05:46:44.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-17 11:12:42] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-17 11:12:42] production.INFO: Old stock: 64.00  
[2026-07-17 11:12:42] production.INFO: Quantity deducted: 1  
[2026-07-17 11:12:42] production.INFO: New stock: 63  
[2026-07-17 11:12:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784279563021"} 
[2026-07-17 11:23:02] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784280182689","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":2,"subtotal":2000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"35.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-16T15:14:15.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":10,"subtotal":2000,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"178.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-17T08:07:54.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":867,"product_id":867,"name":"Active C","sku":"PRD-00865","price":"3500.00","selling_price":"3500.00","purchase_price":"1700.00","quantity":1,"subtotal":3500,"product":{"id":867,"name":"Active C","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"1700.00","last_purchase_price":"1700.00","selling_price":"3500.00","current_stock":"29.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00865","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-30","created_at":"2026-04-30T07:41:00.000000Z","updated_at":"2026-07-17T08:07:54.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"card","amount":6500}]}} 
[2026-07-17 11:23:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784280204593","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":657,"product_id":657,"name":"Promethazine Strips","sku":"3294","price":"1500.00","selling_price":"1500.00","purchase_price":"485.00","quantity":1,"subtotal":1500,"product":{"id":657,"name":"Promethazine Strips","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"485.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"71.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3294","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-12T16:22:36.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 11:23:24] production.INFO: Stock deduction for product: Promethazine Strips  
[2026-07-17 11:23:24] production.INFO: Old stock: 71.00  
[2026-07-17 11:23:24] production.INFO: Quantity deducted: 1  
[2026-07-17 11:23:24] production.INFO: New stock: 70  
[2026-07-17 11:23:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784280204593"} 
[2026-07-17 12:44:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784285080007","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":766,"product_id":766,"name":"WHITFIELD'S SKIN OINTMENT, 20g","sku":"3403","price":"4000.00","selling_price":"4000.00","purchase_price":"1950.00","quantity":2,"subtotal":8000,"product":{"id":766,"name":"WHITFIELD'S SKIN OINTMENT, 20g","business_location":"EDUC Pharmacy","unit_id":"48","category_id":"23","brand_id":"10","supplier_id":null,"purchase_price":"1950.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"11.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3403","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-02T20:16:21.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 12:44:40] production.INFO: Stock deduction for product: WHITFIELD'S SKIN OINTMENT, 20g  
[2026-07-17 12:44:40] production.INFO: Old stock: 11.00  
[2026-07-17 12:44:40] production.INFO: Quantity deducted: 2  
[2026-07-17 12:44:40] production.INFO: New stock: 9  
[2026-07-17 12:44:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784285080007"} 
[2026-07-17 12:59:37] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784285976617","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":516,"product_id":516,"name":"LOFNAC GEL, 30g","sku":"3153","price":"7500.00","selling_price":"7500.00","purchase_price":"3650.00","quantity":1,"subtotal":7500,"product":{"id":516,"name":"LOFNAC GEL, 30g","business_location":"EDUC Pharmacy","unit_id":"50","category_id":"17","brand_id":"19","supplier_id":null,"purchase_price":"3650.00","last_purchase_price":null,"selling_price":"7500.00","current_stock":"14.00","stock":"14.00","product_type":"Single","tax":null,"sku":"3153","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-15T15:33:11.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"100.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-16T15:01:43.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 12:59:37] production.INFO: Stock deduction for product: LOFNAC GEL, 30g  
[2026-07-17 12:59:37] production.INFO: Old stock: 14.00  
[2026-07-17 12:59:37] production.INFO: Quantity deducted: 1  
[2026-07-17 12:59:37] production.INFO: New stock: 13  
[2026-07-17 12:59:37] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-17 12:59:37] production.INFO: Old stock: 100.00  
[2026-07-17 12:59:37] production.INFO: Quantity deducted: 1  
[2026-07-17 12:59:37] production.INFO: New stock: 99  
[2026-07-17 12:59:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784285976617"} 
[2026-07-17 13:08:33] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784286512134","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":185,"product_id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","sku":"0655","price":"13000.00","selling_price":"13000.00","purchase_price":"6500.00","quantity":1,"subtotal":13000,"product":{"id":185,"name":"CLAMOXIN 625MG Tablets (AUGMENTIN)","business_location":"EDUC Pharmacy","unit_id":"7","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"6500.00","last_purchase_price":null,"selling_price":"13000.00","current_stock":"3.00","stock":"4.00","product_type":"Single","tax":null,"sku":"0655","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-12","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-15T10:53:12.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"88.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-15T16:18:54.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-17 13:08:33] production.INFO: Stock deduction for product: CLAMOXIN 625MG Tablets (AUGMENTIN)  
[2026-07-17 13:08:33] production.INFO: Old stock: 3.00  
[2026-07-17 13:08:33] production.INFO: Quantity deducted: 1  
[2026-07-17 13:08:33] production.INFO: New stock: 2  
[2026-07-17 13:08:33] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-17 13:08:33] production.INFO: Old stock: 88.00  
[2026-07-17 13:08:33] production.INFO: Quantity deducted: 1  
[2026-07-17 13:08:33] production.INFO: New stock: 87  
[2026-07-17 13:08:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784286512134"} 
[2026-07-17 13:12:58] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784286777197","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":177,"product_id":177,"name":"CIPROFLOXACIN (XIPRO) EYE DROPS","sku":"0735","price":"2500.00","selling_price":"2500.00","purchase_price":"1100.00","quantity":1,"subtotal":2500,"product":{"id":177,"name":"CIPROFLOXACIN (XIPRO) EYE DROPS","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1100.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"0735","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T00:20:01.000000Z","updated_at":"2026-07-03T12:03:25.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":768,"product_id":768,"name":"XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP","sku":"3405","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":768,"name":"XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP","business_location":"EDUC Pharmacy","unit_id":"32","category_id":"11","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3405","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-02","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T15:51:49.000000Z","brand":null,"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":523,"product_id":523,"name":"LONART DS","sku":"3160","price":"11000.00","selling_price":"11000.00","purchase_price":"5500.00","quantity":1,"subtotal":11000,"product":{"id":523,"name":"LONART DS","business_location":"EDUC Pharmacy","unit_id":"63","category_id":"19","brand_id":"1","supplier_id":null,"purchase_price":"5500.00","last_purchase_price":null,"selling_price":"11000.00","current_stock":"14.00","stock":"24.00","product_type":"Single","tax":null,"sku":"3160","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-16T13:00:10.000000Z","brand":null,"category":{"id":19,"name":"ANTIMALARIAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-17 13:12:58] production.INFO: Stock deduction for product: CIPROFLOXACIN (XIPRO) EYE DROPS  
[2026-07-17 13:12:58] production.INFO: Old stock: 9.00  
[2026-07-17 13:12:58] production.INFO: Quantity deducted: 1  
[2026-07-17 13:12:58] production.INFO: New stock: 8  
[2026-07-17 13:12:58] production.INFO: Stock deduction for product: XIPRO D ( CIPROFLOXACIN/DEXAMETHASONE) EYE DROP  
[2026-07-17 13:12:58] production.INFO: Old stock: 8.00  
[2026-07-17 13:12:58] production.INFO: Quantity deducted: 1  
[2026-07-17 13:12:58] production.INFO: New stock: 7  
[2026-07-17 13:12:58] production.INFO: Stock deduction for product: LONART DS  
[2026-07-17 13:12:58] production.INFO: Old stock: 14.00  
[2026-07-17 13:12:58] production.INFO: Quantity deducted: 1  
[2026-07-17 13:12:58] production.INFO: New stock: 13  
[2026-07-17 13:12:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784286777197"} 
[2026-07-17 13:51:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784289114568","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":830,"product_id":830,"name":"Iduplus","sku":"PRD-00830","price":"2000.00","selling_price":"2000.00","purchase_price":"950.00","quantity":1,"subtotal":2000,"product":{"id":830,"name":"Iduplus","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"950.00","last_purchase_price":"950.00","selling_price":"2000.00","current_stock":"23.00","stock":"32.00","product_type":"Single","tax":null,"sku":"PRD-00830","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-17","last_purchase_date":"2026-04-08","created_at":"2026-04-08T09:21:23.000000Z","updated_at":"2026-07-16T17:56:27.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 13:51:55] production.INFO: Stock deduction for product: Iduplus  
[2026-07-17 13:51:55] production.INFO: Old stock: 23.00  
[2026-07-17 13:51:55] production.INFO: Quantity deducted: 1  
[2026-07-17 13:51:55] production.INFO: New stock: 22  
[2026-07-17 13:51:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784289114568"} 
[2026-07-17 14:07:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784290073274","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":710,"product_id":710,"name":"Super Apeti Plus Syrp 200ml","sku":"3347","price":"14000.00","selling_price":"14000.00","purchase_price":"6900.00","quantity":1,"subtotal":14000,"product":{"id":710,"name":"Super Apeti Plus Syrp 200ml","business_location":"EDUC Pharmacy","unit_id":"44","category_id":"1","brand_id":"35","supplier_id":null,"purchase_price":"6900.00","last_purchase_price":null,"selling_price":"14000.00","current_stock":"9.00","stock":"11.00","product_type":"Single","tax":null,"sku":"3347","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-06-29T09:26:15.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":null}}],"payment_method":"card"}} 
[2026-07-17 14:07:54] production.INFO: Stock deduction for product: Super Apeti Plus Syrp 200ml  
[2026-07-17 14:07:54] production.INFO: Old stock: 9.00  
[2026-07-17 14:07:54] production.INFO: Quantity deducted: 1  
[2026-07-17 14:07:54] production.INFO: New stock: 8  
[2026-07-17 14:07:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784290073274"} 
[2026-07-17 14:16:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784290560616","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"56.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-15T15:13:27.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:16:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784290558800","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":839,"product_id":839,"name":"HCG Pregnancy Test Strip","sku":"PRD-00839","price":"1500.00","selling_price":"1500.00","purchase_price":"599.94","quantity":1,"subtotal":1500,"product":{"id":839,"name":"HCG Pregnancy Test Strip","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"599.94","last_purchase_price":"599.94","selling_price":"1500.00","current_stock":"56.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00839","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-18","created_at":"2026-04-18T07:24:14.000000Z","updated_at":"2026-07-15T15:13:27.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:16:00] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-17 14:16:00] production.INFO: Stock deduction for product: HCG Pregnancy Test Strip  
[2026-07-17 14:16:00] production.INFO: Old stock: 56.00  
[2026-07-17 14:16:00] production.INFO: Quantity deducted: 1  
[2026-07-17 14:16:00] production.INFO: Old stock: 56.00  
[2026-07-17 14:16:00] production.INFO: New stock: 55  
[2026-07-17 14:16:00] production.INFO: Quantity deducted: 1  
[2026-07-17 14:16:00] production.INFO: New stock: 55  
[2026-07-17 14:16:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784290560616"} 
[2026-07-17 14:16:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784290558800"} 
[2026-07-17 14:16:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784290582279","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"83.00","stock":"85.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-13T18:56:16.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:16:26] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-17 14:16:26] production.INFO: Old stock: 83.00  
[2026-07-17 14:16:26] production.INFO: Quantity deducted: 1  
[2026-07-17 14:16:26] production.INFO: New stock: 82  
[2026-07-17 14:16:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784290582279"} 
[2026-07-17 14:30:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784291407243","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":610,"product_id":610,"name":"One-step pregnancy Test Strip","sku":"3247","price":"1000.00","selling_price":"1000.00","purchase_price":"250.00","quantity":1,"subtotal":1000,"product":{"id":610,"name":"One-step pregnancy Test Strip","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"250.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"146.00","stock":"205.00","product_type":"Single","tax":null,"sku":"3247","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-15","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-16T18:40:23.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:30:07] production.INFO: Stock deduction for product: One-step pregnancy Test Strip  
[2026-07-17 14:30:07] production.INFO: Old stock: 146.00  
[2026-07-17 14:30:07] production.INFO: Quantity deducted: 1  
[2026-07-17 14:30:07] production.INFO: New stock: 145  
[2026-07-17 14:30:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784291407243"} 
[2026-07-17 14:31:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784291493130","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":699,"product_id":699,"name":"Softcare Pad","sku":"3336","price":"4000.00","selling_price":"4000.00","purchase_price":"4500.00","quantity":1,"subtotal":4000,"product":{"id":699,"name":"Softcare Pad","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"4500.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"19.00","stock":"19.00","product_type":"Single","tax":null,"sku":"3336","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-16","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T18:52:46.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:31:34] production.INFO: Stock deduction for product: Softcare Pad  
[2026-07-17 14:31:34] production.INFO: Old stock: 19.00  
[2026-07-17 14:31:34] production.INFO: Quantity deducted: 1  
[2026-07-17 14:31:34] production.INFO: New stock: 18  
[2026-07-17 14:31:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784291493130"} 
[2026-07-17 14:34:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784291654082","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":606,"product_id":606,"name":"Omezing Omeprazole","sku":"3243","price":"1000.00","selling_price":"1000.00","purchase_price":"450.00","quantity":1,"subtotal":1000,"product":{"id":606,"name":"Omezing Omeprazole","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"21","brand_id":"1","supplier_id":null,"purchase_price":"450.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"69.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3243","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-16T09:40:22.000000Z","brand":null,"category":{"id":21,"name":"ANTIULCER","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:34:15] production.INFO: Stock deduction for product: Omezing Omeprazole  
[2026-07-17 14:34:15] production.INFO: Old stock: 69.00  
[2026-07-17 14:34:15] production.INFO: Quantity deducted: 1  
[2026-07-17 14:34:15] production.INFO: New stock: 68  
[2026-07-17 14:34:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784291654082"} 
[2026-07-17 14:48:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784292527989","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":143,"product_id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","sku":"1324","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":143,"name":"C-4 (Cyproheptadine HCKL 4mg)","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1750.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"79.00","stock":"79.00","product_type":"Single","tax":null,"sku":"1324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-08","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-08T07:59:10.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 14:48:49] production.INFO: Stock deduction for product: C-4 (Cyproheptadine HCKL 4mg)  
[2026-07-17 14:48:49] production.INFO: Old stock: 79.00  
[2026-07-17 14:48:49] production.INFO: Quantity deducted: 1  
[2026-07-17 14:48:49] production.INFO: New stock: 78  
[2026-07-17 14:48:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784292527989"} 
[2026-07-17 14:59:54] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784293193226","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":648,"product_id":648,"name":"Prednisolone 5mg Tablets","sku":"3285","price":"2500.00","selling_price":"2500.00","purchase_price":"900.00","quantity":2,"subtotal":5000,"product":{"id":648,"name":"Prednisolone 5mg Tablets","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"23","brand_id":"1","supplier_id":null,"purchase_price":"900.00","last_purchase_price":null,"selling_price":"2500.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3285","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-13T05:54:23.000000Z","brand":null,"category":{"id":23,"name":"BURNS AND WOUNDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":794,"product_id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","sku":"0752","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":10,"subtotal":15000,"product":{"id":794,"name":"COMIT-100 (Oral Jelly, Sildenafil 100mg)","business_location":"EDUC Pharmacy","unit_id":"37","category_id":"22","brand_id":"19","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"25.00","stock":"32.00","product_type":"Single","tax":null,"sku":"0752","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:58:30.000000Z","updated_at":"2026-06-27T12:07:03.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":22,"name":"APHRODISIAC","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-17 14:59:54] production.INFO: Stock deduction for product: Prednisolone 5mg Tablets  
[2026-07-17 14:59:54] production.INFO: Old stock: 47.00  
[2026-07-17 14:59:54] production.INFO: Quantity deducted: 2  
[2026-07-17 14:59:54] production.INFO: New stock: 45  
[2026-07-17 14:59:54] production.INFO: Stock deduction for product: COMIT-100 (Oral Jelly, Sildenafil 100mg)  
[2026-07-17 14:59:54] production.INFO: Old stock: 25.00  
[2026-07-17 14:59:54] production.INFO: Quantity deducted: 10  
[2026-07-17 14:59:54] production.INFO: New stock: 15  
[2026-07-17 14:59:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784293193226"} 
[2026-07-17 15:06:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784293583039","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"99.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-17T10:59:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 15:06:22] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-17 15:06:22] production.INFO: Old stock: 99.00  
[2026-07-17 15:06:22] production.INFO: Quantity deducted: 1  
[2026-07-17 15:06:22] production.INFO: New stock: 98  
[2026-07-17 15:06:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784293583039"} 
[2026-07-17 15:06:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784293583127","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"99.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-17T10:59:37.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 15:06:22] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-17 15:06:22] production.INFO: Old stock: 98.00  
[2026-07-17 15:06:22] production.INFO: Quantity deducted: 1  
[2026-07-17 15:06:22] production.INFO: New stock: 97  
[2026-07-17 15:06:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784293583127"} 
[2026-07-17 15:32:25] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784295144391","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":746,"product_id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","sku":"3383","price":"4500.00","selling_price":"4500.00","purchase_price":"1900.00","quantity":1,"subtotal":4500,"product":{"id":746,"name":"UNOSURE 72 LEVONOGESTREL-EMERGECY PILL","business_location":"EDUC Pharmacy","unit_id":"46","category_id":"26","brand_id":"12","supplier_id":null,"purchase_price":"1900.00","last_purchase_price":null,"selling_price":"4500.00","current_stock":"63.00","stock":"70.00","product_type":"Single","tax":null,"sku":"3383","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-15","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-17T09:12:42.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":26,"name":"CONTRACEPTIVE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":381,"product_id":381,"name":"FRICKS LOZENGES 120S","sku":"3018","price":"1500.00","selling_price":"1500.00","purchase_price":"617.00","quantity":3,"subtotal":4500,"product":{"id":381,"name":"FRICKS LOZENGES 120S","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"617.00","last_purchase_price":null,"selling_price":"1500.00","current_stock":"14.00","stock":"40.00","product_type":"Single","tax":null,"sku":"3018","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-02","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-16T07:40:44.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 15:32:25] production.INFO: Stock deduction for product: UNOSURE 72 LEVONOGESTREL-EMERGECY PILL  
[2026-07-17 15:32:25] production.INFO: Old stock: 63.00  
[2026-07-17 15:32:25] production.INFO: Quantity deducted: 1  
[2026-07-17 15:32:25] production.INFO: New stock: 62  
[2026-07-17 15:32:25] production.INFO: Stock deduction for product: FRICKS LOZENGES 120S  
[2026-07-17 15:32:25] production.INFO: Old stock: 14.00  
[2026-07-17 15:32:25] production.INFO: Quantity deducted: 3  
[2026-07-17 15:32:25] production.INFO: New stock: 11  
[2026-07-17 15:32:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784295144391"} 
[2026-07-17 15:38:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784295532141","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":49,"product_id":49,"name":"Alcohol Pads","sku":"1338","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":49,"name":"Alcohol Pads","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"7500.00","last_purchase_price":null,"selling_price":"15000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"1338","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T00:09:13.000000Z","updated_at":"2026-03-06T00:09:13.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 15:38:51] production.INFO: Stock deduction for product: Alcohol Pads  
[2026-07-17 15:38:51] production.INFO: Old stock: 2.00  
[2026-07-17 15:38:51] production.INFO: Quantity deducted: 1  
[2026-07-17 15:38:51] production.INFO: New stock: 1  
[2026-07-17 15:38:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784295532141"} 
[2026-07-17 15:44:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784295872339","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":926,"product_id":926,"name":"Parapain","sku":"PRD-00926","price":"400.00","selling_price":"400.00","purchase_price":"184.00","quantity":1,"subtotal":400,"product":{"id":926,"name":"Parapain","business_location":"EDUC Pharmacy (BL0001)","unit_id":"23","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"184.00","last_purchase_price":"184.00","selling_price":"400.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00926","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-06-30","created_at":"2026-06-30T17:57:23.000000Z","updated_at":"2026-07-14T09:14:39.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 15:44:33] production.INFO: Stock deduction for product: Parapain  
[2026-07-17 15:44:33] production.INFO: Old stock: 37.00  
[2026-07-17 15:44:33] production.INFO: Quantity deducted: 1  
[2026-07-17 15:44:33] production.INFO: New stock: 36  
[2026-07-17 15:44:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784295872339"} 
[2026-07-17 15:51:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784296305472","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"98.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-17T13:07:20.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":84,"product_id":84,"name":"ASPRIN 300MG","sku":"0685","price":"1000.00","selling_price":"1000.00","purchase_price":"230.00","quantity":1,"subtotal":1000,"product":{"id":84,"name":"ASPRIN 300MG","business_location":"EDUC Pharmacy","unit_id":"58","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"230.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"214.00","stock":"216.00","product_type":"Single","tax":null,"sku":"0685","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-17T08:51:58.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 15:51:46] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-17 15:51:46] production.INFO: Old stock: 98.00  
[2026-07-17 15:51:46] production.INFO: Quantity deducted: 1  
[2026-07-17 15:51:46] production.INFO: New stock: 97  
[2026-07-17 15:51:46] production.INFO: Stock deduction for product: ASPRIN 300MG  
[2026-07-17 15:51:46] production.INFO: Old stock: 214.00  
[2026-07-17 15:51:46] production.INFO: Quantity deducted: 1  
[2026-07-17 15:51:46] production.INFO: New stock: 213  
[2026-07-17 15:51:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784296305472"} 
[2026-07-17 15:56:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784296616487","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":463,"product_id":463,"name":"IBUPROFEN 200MG","sku":"3100","price":"1000.00","selling_price":"1000.00","purchase_price":"430.00","quantity":1,"subtotal":1000,"product":{"id":463,"name":"IBUPROFEN 200MG","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"31","supplier_id":null,"purchase_price":"430.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"33.00","stock":"146.00","product_type":"Single","tax":null,"sku":"3100","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-17T09:23:02.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-17 15:56:56] production.INFO: Stock deduction for product: IBUPROFEN 200MG  
[2026-07-17 15:56:56] production.INFO: Old stock: 33.00  
[2026-07-17 15:56:56] production.INFO: Quantity deducted: 1  
[2026-07-17 15:56:56] production.INFO: New stock: 32  
[2026-07-17 15:56:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784296616487"} 
[2026-07-17 16:37:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784299073345","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":216,"product_id":216,"name":"DAWAHIST SYRUP, 100ml","sku":"0768","price":"6500.00","selling_price":"6500.00","purchase_price":"3200.00","quantity":1,"subtotal":6500,"product":{"id":216,"name":"DAWAHIST SYRUP, 100ml","business_location":"EDUC Pharmacy","unit_id":"0","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"3200.00","last_purchase_price":null,"selling_price":"6500.00","current_stock":"9.00","stock":"28.00","product_type":"Single","tax":null,"sku":"0768","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-14T16:33:04.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 16:37:53] production.INFO: Stock deduction for product: DAWAHIST SYRUP, 100ml  
[2026-07-17 16:37:53] production.INFO: Old stock: 9.00  
[2026-07-17 16:37:53] production.INFO: Quantity deducted: 1  
[2026-07-17 16:37:53] production.INFO: New stock: 8  
[2026-07-17 16:37:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784299073345"} 
[2026-07-17 16:56:43] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784300203147","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":40,"product_id":40,"name":"Adhesive Plater 5cm","sku":"1168","price":"3500.00","selling_price":"3500.00","purchase_price":"1600.00","quantity":1,"subtotal":3500,"product":{"id":40,"name":"Adhesive Plater 5cm","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"1600.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"10.00","stock":"12.00","product_type":"Single","tax":null,"sku":"1168","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-05","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-01T15:02:28.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":467,"product_id":467,"name":"Indomethacine 25 MG","sku":"3104","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":467,"name":"Indomethacine 25 MG","business_location":"EDUC Pharmacy","unit_id":"55","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"82.00","stock":"85.00","product_type":"Single","tax":null,"sku":"3104","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:09:26.000000Z","updated_at":"2026-07-17T12:16:26.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 16:56:43] production.INFO: Stock deduction for product: Adhesive Plater 5cm  
[2026-07-17 16:56:43] production.INFO: Old stock: 10.00  
[2026-07-17 16:56:43] production.INFO: Quantity deducted: 1  
[2026-07-17 16:56:43] production.INFO: New stock: 9  
[2026-07-17 16:56:43] production.INFO: Stock deduction for product: Indomethacine 25 MG  
[2026-07-17 16:56:43] production.INFO: Old stock: 82.00  
[2026-07-17 16:56:43] production.INFO: Quantity deducted: 1  
[2026-07-17 16:56:43] production.INFO: New stock: 81  
[2026-07-17 16:56:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784300203147"} 
[2026-07-17 17:00:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784300404602","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"DACOLD CAPSULES","sku":"0764","price":"4000.00","selling_price":"4000.00","purchase_price":"1850.00","quantity":1,"subtotal":4000,"product":{"id":203,"name":"DACOLD CAPSULES","business_location":"EDUC Pharmacy","unit_id":"38","category_id":"25","brand_id":"31","supplier_id":null,"purchase_price":"1850.00","last_purchase_price":null,"selling_price":"4000.00","current_stock":"23.00","stock":"55.00","product_type":"Single","tax":null,"sku":"0764","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-25","last_purchase_date":null,"created_at":"2026-03-06T00:41:45.000000Z","updated_at":"2026-07-16T17:19:34.000000Z","brand":{"id":31,"name":"DAWA","note":null,"created_at":null,"updated_at":null},"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"airtel_money"}} 
[2026-07-17 17:00:05] production.INFO: Stock deduction for product: DACOLD CAPSULES  
[2026-07-17 17:00:05] production.INFO: Old stock: 23.00  
[2026-07-17 17:00:05] production.INFO: Quantity deducted: 1  
[2026-07-17 17:00:05] production.INFO: New stock: 22  
[2026-07-17 17:00:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784300404602"} 
[2026-07-17 17:10:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784301002902","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":848,"product_id":848,"name":"Nifedipine 20mg (Calnif Retard)","sku":"PRD-00848","price":"2000.00","selling_price":"2000.00","purchase_price":"900.00","quantity":1,"subtotal":2000,"product":{"id":848,"name":"Nifedipine 20mg (Calnif Retard)","business_location":"EDUC Pharmacy (BL0001)","unit_id":"65","category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"900.00","last_purchase_price":"900.00","selling_price":"2000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00848","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":"2026-04-19","created_at":"2026-04-19T07:39:32.000000Z","updated_at":"2026-07-14T13:43:32.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 17:10:03] production.INFO: Stock deduction for product: Nifedipine 20mg (Calnif Retard)  
[2026-07-17 17:10:03] production.INFO: Old stock: 1.00  
[2026-07-17 17:10:03] production.INFO: Quantity deducted: 1  
[2026-07-17 17:10:03] production.INFO: New stock: 0  
[2026-07-17 17:10:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784301002902"} 
[2026-07-17 17:20:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784301649250","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":634,"product_id":634,"name":"Phillip Milk of Magnesia","sku":"3271","price":"3500.00","selling_price":"3500.00","purchase_price":"1560.00","quantity":1,"subtotal":3500,"product":{"id":634,"name":"Phillip Milk of Magnesia","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"6","brand_id":"1","supplier_id":null,"purchase_price":"1560.00","last_purchase_price":null,"selling_price":"3500.00","current_stock":"15.00","stock":"21.00","product_type":"Single","tax":null,"sku":"3271","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-09T17:16:02.000000Z","brand":null,"category":{"id":6,"name":"ANTACIDS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 17:20:50] production.INFO: Stock deduction for product: Phillip Milk of Magnesia  
[2026-07-17 17:20:50] production.INFO: Old stock: 15.00  
[2026-07-17 17:20:50] production.INFO: Quantity deducted: 1  
[2026-07-17 17:20:50] production.INFO: New stock: 14  
[2026-07-17 17:20:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784301649250"} 
[2026-07-17 17:21:21] production.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"invoice_no":"INV-1784301681890","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"97.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-17T06:10:45.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":1,"subtotal":300,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"207.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T15:03:20.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"168.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-17T09:23:02.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 17:21:21] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-17 17:21:21] production.INFO: Old stock: 97.00  
[2026-07-17 17:21:21] production.INFO: Quantity deducted: 1  
[2026-07-17 17:21:21] production.INFO: New stock: 96  
[2026-07-17 17:21:21] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-17 17:21:21] production.INFO: Old stock: 207.00  
[2026-07-17 17:21:21] production.INFO: Quantity deducted: 1  
[2026-07-17 17:21:21] production.INFO: New stock: 206  
[2026-07-17 17:21:21] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-17 17:21:21] production.INFO: Old stock: 168.00  
[2026-07-17 17:21:21] production.INFO: Quantity deducted: 1  
[2026-07-17 17:21:21] production.INFO: New stock: 167  
[2026-07-17 17:21:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784301681890"} 
[2026-07-17 17:26:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784302020305","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"167.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-17T15:21:21.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 17:26:59] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-17 17:26:59] production.INFO: Old stock: 167.00  
[2026-07-17 17:26:59] production.INFO: Quantity deducted: 1  
[2026-07-17 17:26:59] production.INFO: New stock: 166  
[2026-07-17 17:26:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784302020305"} 
[2026-07-17 17:36:02] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784302562406","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":575,"product_id":575,"name":"Multivit G ( Multivitamin Caps)","sku":"3212","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":575,"name":"Multivit G ( Multivitamin Caps)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"2500.00","last_purchase_price":null,"selling_price":"5000.00","current_stock":"5.00","stock":"10.00","product_type":"Single","tax":null,"sku":"3212","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-17","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-06-20T14:34:50.000000Z","brand":null,"category":null}},{"id":703,"product_id":703,"name":"Stalcal Tab( Calcium)","sku":"3340","price":"3000.00","selling_price":"3000.00","purchase_price":"1350.00","quantity":1,"subtotal":3000,"product":{"id":703,"name":"Stalcal Tab( Calcium)","business_location":"EDUC Pharmacy","unit_id":"65","category_id":"1","brand_id":"1","supplier_id":null,"purchase_price":"1350.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"19.00","stock":"30.00","product_type":"Single","tax":null,"sku":"3340","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-03","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-15T09:14:23.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-17 17:36:02] production.INFO: Stock deduction for product: Multivit G ( Multivitamin Caps)  
[2026-07-17 17:36:02] production.INFO: Old stock: 5.00  
[2026-07-17 17:36:02] production.INFO: Quantity deducted: 1  
[2026-07-17 17:36:02] production.INFO: New stock: 4  
[2026-07-17 17:36:02] production.INFO: Stock deduction for product: Stalcal Tab( Calcium)  
[2026-07-17 17:36:02] production.INFO: Old stock: 19.00  
[2026-07-17 17:36:02] production.INFO: Quantity deducted: 1  
[2026-07-17 17:36:02] production.INFO: New stock: 18  
[2026-07-17 17:36:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784302562406"} 
[2026-07-17 17:42:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784302930275","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"96.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-17T15:21:21.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 17:42:11] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-17 17:42:11] production.INFO: Old stock: 96.00  
[2026-07-17 17:42:11] production.INFO: Quantity deducted: 1  
[2026-07-17 17:42:11] production.INFO: New stock: 95  
[2026-07-17 17:42:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784302930275"} 
[2026-07-17 18:07:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784304462739","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":946,"product_id":946,"name":"Moleben Tab","sku":"PRD-00946","price":"7000.00","selling_price":"7000.00","purchase_price":"3500.00","quantity":1,"subtotal":7000,"product":{"id":946,"name":"Moleben Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":"7","brand_id":"8","supplier_id":"1","purchase_price":"3500.00","last_purchase_price":"3500.00","selling_price":"7000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00946","image":null,"description":null,"alert_quantity":"5.00","expiry_date":null,"last_purchase_date":"2026-07-02","created_at":"2026-07-02T20:40:12.000000Z","updated_at":"2026-07-02T20:40:12.000000Z","brand":{"id":8,"name":"60ML","note":null,"created_at":null,"updated_at":null},"category":{"id":7,"name":"ANTGOUT","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"national_bank"}} 
[2026-07-17 18:07:42] production.INFO: Stock deduction for product: Moleben Tab  
[2026-07-17 18:07:42] production.INFO: Old stock: 10.00  
[2026-07-17 18:07:42] production.INFO: Quantity deducted: 1  
[2026-07-17 18:07:42] production.INFO: New stock: 9  
[2026-07-17 18:07:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784304462739"} 
[2026-07-17 18:14:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784304879953","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":4,"subtotal":800,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"166.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-17T15:26:59.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 18:14:40] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-17 18:14:40] production.INFO: Old stock: 166.00  
[2026-07-17 18:14:40] production.INFO: Quantity deducted: 4  
[2026-07-17 18:14:40] production.INFO: New stock: 162  
[2026-07-17 18:14:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784304879953"} 
[2026-07-17 18:20:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784305258191","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":85,"product_id":85,"name":"ASPRIN 75MG JUNIOR","sku":"0686","price":"1000.00","selling_price":"1000.00","purchase_price":"378.00","quantity":1,"subtotal":1000,"product":{"id":85,"name":"ASPRIN 75MG JUNIOR","business_location":"EDUC Pharmacy","unit_id":"60","category_id":"18","brand_id":"10","supplier_id":null,"purchase_price":"378.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"66.00","stock":"120.00","product_type":"Single","tax":null,"sku":"0686","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-09","last_purchase_date":null,"created_at":"2026-03-06T00:11:16.000000Z","updated_at":"2026-07-15T16:06:14.000000Z","brand":{"id":10,"name":"ABSUN PHARMA","note":null,"created_at":null,"updated_at":null},"category":{"id":18,"name":"ANTIHYPERTENSIVES","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 18:20:59] production.INFO: Stock deduction for product: ASPRIN 75MG JUNIOR  
[2026-07-17 18:20:59] production.INFO: Old stock: 66.00  
[2026-07-17 18:20:59] production.INFO: Quantity deducted: 1  
[2026-07-17 18:20:59] production.INFO: New stock: 65  
[2026-07-17 18:20:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784305258191"} 
[2026-07-17 19:10:57] production.INFO: Finalize sale attempt {"cart_items":5,"request_data":{"invoice_no":"INV-1784308257606","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":163,"product_id":163,"name":"CEFTRIAXONE 1GM INJECTION","sku":"0725","price":"3000.00","selling_price":"3000.00","purchase_price":"1650.00","quantity":1,"subtotal":3000,"product":{"id":163,"name":"CEFTRIAXONE 1GM INJECTION","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"11","brand_id":"12","supplier_id":null,"purchase_price":"1650.00","last_purchase_price":null,"selling_price":"3000.00","current_stock":"10.00","stock":"24.00","product_type":"Single","tax":null,"sku":"0725","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-15","last_purchase_date":null,"created_at":"2026-03-06T00:13:11.000000Z","updated_at":"2026-07-05T09:25:03.000000Z","brand":{"id":12,"name":"AKUMS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":761,"product_id":761,"name":"Water for Injection","sku":"3398","price":"1000.00","selling_price":"1000.00","purchase_price":"385.00","quantity":1,"subtotal":1000,"product":{"id":761,"name":"Water for Injection","business_location":"EDUC Pharmacy","unit_id":"18","category_id":"36","brand_id":"1","supplier_id":null,"purchase_price":"385.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"3398","image":null,"description":null,"alert_quantity":null,"expiry_date":null,"last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-16T12:07:06.000000Z","brand":null,"category":{"id":36,"name":"HOMONES","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":369,"product_id":369,"name":"Examination Gloves Primary","sku":"3006","price":"800.00","selling_price":"800.00","purchase_price":"360.00","quantity":1,"subtotal":800,"product":{"id":369,"name":"Examination Gloves Primary","business_location":"EDUC Pharmacy","unit_id":"64","category_id":"20","brand_id":"1","supplier_id":null,"purchase_price":"360.00","last_purchase_price":null,"selling_price":"800.00","current_stock":"79.00","stock":"108.00","product_type":"Single","tax":null,"sku":"3006","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-16T12:07:06.000000Z","brand":null,"category":{"id":20,"name":"ANTISEPTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":24,"product_id":24,"name":"10ML SYRINGS","sku":"1025","price":"500.00","selling_price":"500.00","purchase_price":"185.00","quantity":1,"subtotal":500,"product":{"id":24,"name":"10ML SYRINGS","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"39","brand_id":"1","supplier_id":null,"purchase_price":"185.00","last_purchase_price":null,"selling_price":"500.00","current_stock":"40.00","stock":"102.00","product_type":"Single","tax":null,"sku":"1025","image":null,"description":null,"alert_quantity":null,"expiry_date":"2030-04-30","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-02T15:14:15.000000Z","brand":null,"category":{"id":39,"name":"MISCELLENEOUS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":382,"product_id":382,"name":"FRICKS LOZENGES 250 JAR","sku":"3019","price":"200.00","selling_price":"200.00","purchase_price":"60.00","quantity":1,"subtotal":200,"product":{"id":382,"name":"FRICKS LOZENGES 250 JAR","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"60.00","last_purchase_price":null,"selling_price":"200.00","current_stock":"162.00","stock":"447.00","product_type":"Single","tax":null,"sku":"3019","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-05-30","last_purchase_date":null,"created_at":"2026-03-06T01:06:09.000000Z","updated_at":"2026-07-17T16:14:40.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"card"}} 
[2026-07-17 19:10:57] production.INFO: Stock deduction for product: CEFTRIAXONE 1GM INJECTION  
[2026-07-17 19:10:57] production.INFO: Old stock: 10.00  
[2026-07-17 19:10:57] production.INFO: Quantity deducted: 1  
[2026-07-17 19:10:57] production.INFO: New stock: 9  
[2026-07-17 19:10:57] production.INFO: Stock deduction for product: Water for Injection  
[2026-07-17 19:10:57] production.INFO: Old stock: 15.00  
[2026-07-17 19:10:57] production.INFO: Quantity deducted: 1  
[2026-07-17 19:10:57] production.INFO: New stock: 14  
[2026-07-17 19:10:57] production.INFO: Stock deduction for product: Examination Gloves Primary  
[2026-07-17 19:10:57] production.INFO: Old stock: 79.00  
[2026-07-17 19:10:57] production.INFO: Quantity deducted: 1  
[2026-07-17 19:10:57] production.INFO: New stock: 78  
[2026-07-17 19:10:57] production.INFO: Stock deduction for product: 10ML SYRINGS  
[2026-07-17 19:10:57] production.INFO: Old stock: 40.00  
[2026-07-17 19:10:57] production.INFO: Quantity deducted: 1  
[2026-07-17 19:10:57] production.INFO: New stock: 39  
[2026-07-17 19:10:57] production.INFO: Stock deduction for product: FRICKS LOZENGES 250 JAR  
[2026-07-17 19:10:57] production.INFO: Old stock: 162.00  
[2026-07-17 19:10:57] production.INFO: Quantity deducted: 1  
[2026-07-17 19:10:57] production.INFO: New stock: 161  
[2026-07-17 19:10:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784308257606"} 
[2026-07-17 19:13:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784308418733","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":625,"product_id":625,"name":"Paracetamol 500mg","sku":"3262","price":"1000.00","selling_price":"1000.00","purchase_price":"410.00","quantity":1,"subtotal":1000,"product":{"id":625,"name":"Paracetamol 500mg","business_location":"EDUC Pharmacy","unit_id":"57","category_id":"17","brand_id":"1","supplier_id":null,"purchase_price":"410.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"97.00","stock":"111.00","product_type":"Single","tax":null,"sku":"3262","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-13","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-17T13:51:46.000000Z","brand":null,"category":{"id":17,"name":"ANTIHISTAMINE","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 19:13:38] production.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-07-17 19:13:38] production.INFO: Old stock: 97.00  
[2026-07-17 19:13:38] production.INFO: Quantity deducted: 1  
[2026-07-17 19:13:38] production.INFO: New stock: 96  
[2026-07-17 19:13:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784308418733"} 
[2026-07-17 19:37:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784309847669","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":616,"product_id":616,"name":"ORS (CORS)","sku":"3253","price":"1000.00","selling_price":"1000.00","purchase_price":"3890.00","quantity":3,"subtotal":3000,"product":{"id":616,"name":"ORS (CORS)","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"13","brand_id":"1","supplier_id":null,"purchase_price":"3890.00","last_purchase_price":null,"selling_price":"1000.00","current_stock":"13.00","stock":"13.00","product_type":"Single","tax":null,"sku":"3253","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-07-14","last_purchase_date":null,"created_at":"2026-03-06T01:12:14.000000Z","updated_at":"2026-07-14T13:56:54.000000Z","brand":null,"category":{"id":13,"name":"ANTIDIARHEAL","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 19:37:28] production.INFO: Stock deduction for product: ORS (CORS)  
[2026-07-17 19:37:28] production.INFO: Old stock: 13.00  
[2026-07-17 19:37:28] production.INFO: Quantity deducted: 3  
[2026-07-17 19:37:28] production.INFO: New stock: 10  
[2026-07-17 19:37:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784309847669"} 
[2026-07-17 20:18:44] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1784312325304","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":43,"product_id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","sku":"0691","price":"6000.00","selling_price":"6000.00","purchase_price":"2850.00","quantity":1,"subtotal":6000,"product":{"id":43,"name":"AGYCIN-500 (Azithromycin 500mg)","business_location":"EDUC Pharmacy","unit_id":"66","category_id":"11","brand_id":"19","supplier_id":null,"purchase_price":"2850.00","last_purchase_price":null,"selling_price":"6000.00","current_stock":"87.00","stock":"128.00","product_type":"Single","tax":null,"sku":"0691","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-06-22","last_purchase_date":null,"created_at":"2026-03-06T00:05:13.000000Z","updated_at":"2026-07-17T11:08:33.000000Z","brand":{"id":19,"name":"BLISS","note":null,"created_at":null,"updated_at":null},"category":{"id":11,"name":"ANTIBIOTICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}},{"id":695,"product_id":695,"name":"SINURHON Tablets 6'S","sku":"3332","price":"2000.00","selling_price":"2000.00","purchase_price":"750.00","quantity":1,"subtotal":2000,"product":{"id":695,"name":"SINURHON Tablets 6'S","business_location":"EDUC Pharmacy","unit_id":"62","category_id":"25","brand_id":"1","supplier_id":null,"purchase_price":"750.00","last_purchase_price":null,"selling_price":"2000.00","current_stock":"95.00","stock":"198.00","product_type":"Single","tax":null,"sku":"3332","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-17T17:11:23.000000Z","brand":null,"category":{"id":25,"name":"COLD N COUGH","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 20:18:44] production.INFO: Stock deduction for product: AGYCIN-500 (Azithromycin 500mg)  
[2026-07-17 20:18:44] production.INFO: Old stock: 87.00  
[2026-07-17 20:18:44] production.INFO: Quantity deducted: 1  
[2026-07-17 20:18:44] production.INFO: New stock: 86  
[2026-07-17 20:18:44] production.INFO: Stock deduction for product: SINURHON Tablets 6'S  
[2026-07-17 20:18:44] production.INFO: Old stock: 95.00  
[2026-07-17 20:18:44] production.INFO: Quantity deducted: 1  
[2026-07-17 20:18:44] production.INFO: New stock: 94  
[2026-07-17 20:18:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784312325304"} 
[2026-07-17 20:33:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784313200955","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":687,"product_id":687,"name":"Shaltoux Natural Cough Lozenges","sku":"3324","price":"300.00","selling_price":"300.00","purchase_price":"140.00","quantity":4,"subtotal":1200,"product":{"id":687,"name":"Shaltoux Natural Cough Lozenges","business_location":"EDUC Pharmacy","unit_id":"23","category_id":"14","brand_id":"35","supplier_id":null,"purchase_price":"140.00","last_purchase_price":null,"selling_price":"300.00","current_stock":"206.00","stock":"613.00","product_type":"Single","tax":null,"sku":"3324","image":null,"description":null,"alert_quantity":null,"expiry_date":"2026-04-18","last_purchase_date":null,"created_at":"2026-03-06T01:15:25.000000Z","updated_at":"2026-07-17T15:21:21.000000Z","brand":{"id":35,"name":"ELYS CHEMICAL","note":null,"created_at":null,"updated_at":null},"category":{"id":14,"name":"ANTIEMETICS","category_code":null,"description":null,"created_at":null,"updated_at":null}}}],"payment_method":"cash"}} 
[2026-07-17 20:33:21] production.INFO: Stock deduction for product: Shaltoux Natural Cough Lozenges  
[2026-07-17 20:33:21] production.INFO: Old stock: 206.00  
[2026-07-17 20:33:21] production.INFO: Quantity deducted: 4  
[2026-07-17 20:33:21] production.INFO: New stock: 202  
[2026-07-17 20:33:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784313200955"} 
[2026-07-18 07:36:46] production.ERROR: SQLSTATE[28000] [1045] Access denied for user 'findartmw_area25'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: select exists (select 1 from information_schema.tables where table_schema = schema() and table_name = 'migrations' and table_type in ('BASE TABLE', 'SYSTEM VERSIONED')) as `exists`) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[28000] [1045] Access denied for user 'findartmw_area25'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: select exists (select 1 from information_schema.tables where table_schema = schema() and table_name = 'migrations' and table_type in ('BASE TABLE', 'SYSTEM VERSIONED')) as `exists`) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(357): Illuminate\\Database\\Connection->select()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(374): Illuminate\\Database\\Connection->selectOne()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(176): Illuminate\\Database\\Connection->scalar()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/DatabaseMigrationRepository.php(185): Illuminate\\Database\\Schema\\Builder->hasTable()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(758): Illuminate\\Database\\Migrations\\DatabaseMigrationRepository->repositoryExists()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(67): Illuminate\\Database\\Migrations\\Migrator->repositoryExists()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\FreshCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(66): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#16 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#18 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#19 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#20 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#24 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#72 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#73 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[28000] [1045] Access denied for user 'findartmw_area25'@'localhost' (using password: YES) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(44): Illuminate\\Database\\Connectors\\Connector->createPdoConnection()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect()
#4 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(357): Illuminate\\Database\\Connection->select()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(374): Illuminate\\Database\\Connection->selectOne()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(176): Illuminate\\Database\\Connection->scalar()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/DatabaseMigrationRepository.php(185): Illuminate\\Database\\Schema\\Builder->hasTable()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(758): Illuminate\\Database\\Migrations\\DatabaseMigrationRepository->repositoryExists()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(67): Illuminate\\Database\\Migrations\\Migrator->repositoryExists()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\FreshCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(66): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#30 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#34 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#82 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#83 {main}
"} 
[2026-07-18 07:37:22] production.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#6 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#45 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#93 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#94 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#8 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#47 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#95 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#96 {main}
"} 
[2026-07-18 07:41:41] production.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#6 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#45 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#93 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#94 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#8 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#47 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#95 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#96 {main}
"} 
[2026-07-18 07:41:55] production.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#6 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#45 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#93 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#94 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#8 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#47 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#95 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#96 {main}
"} 
[2026-07-18 07:42:33] production.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#6 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#45 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#93 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#94 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#8 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#47 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#95 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#96 {main}
"} 
[2026-07-18 07:42:45] production.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#6 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#45 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#93 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#94 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#8 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#47 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#95 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#96 {main}
"} 
[2026-07-18 07:45:11] production.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: create table `sessions` (`id` varchar(191) not null, `user_id` bigint unsigned null, `ip_address` varchar(45) null, `user_agent` text null, `payload` longtext not null, `last_activity` int not null, primary key (`id`)) default character set utf8mb4 collate 'utf8mb4_unicode_ci') at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#6 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#26 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#45 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#93 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#94 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'sessions' already exists at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate\\Database\\Connection->statement()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate\\Database\\Schema\\Blueprint->build()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate\\Database\\Schema\\Builder->build()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Database\\Schema\\Builder->create()
#8 /home/findartmw/public_html/area25/database/migrations/2026_04_26_114244_create_sessions_table.php(14): Illuminate\\Support\\Facades\\Facade::__callStatic()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate\\Database\\Migrations\\Migration@anonymous->up()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate\\Database\\Migrations\\Migrator->runMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->runMigration()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Database\\Migrations\\Migrator->Illuminate\\Database\\Migrations\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate\\Console\\View\\Components\\Task->render()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate\\Database\\Migrations\\Migrator->write()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate\\Database\\Migrations\\Migrator->runUp()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate\\Database\\Migrations\\Migrator->runPending()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate\\Database\\Migrations\\Migrator->run()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->Illuminate\\Database\\Console\\Migrations\\{closure}()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate\\Database\\Migrations\\Migrator->usingConnection()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->runMigrations()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\MigrateCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(81): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#39 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#41 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#47 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#95 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#96 {main}
"} 
[2026-07-18 08:04:43] production.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users_email_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `users` (`name`, `email`, `email_verified_at`, `password`, `remember_token`, `updated_at`, `created_at`) values (Test User, test@example.com, 2026-07-18 08:04:42, $2y$12$YBlM0uQRTplie/o6pNnqpuxWOC3kGUrbp80iY3dpy0heuFSP/X15W, hAFSFEgUKm, 2026-07-18 08:04:43, 2026-07-18 08:04:43)) {"userId":1,"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users_email_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `users` (`name`, `email`, `email_verified_at`, `password`, `remember_token`, `updated_at`, `created_at`) values (Test User, test@example.com, 2026-07-18 08:04:42, $2y$12$YBlM0uQRTplie/o6pNnqpuxWOC3kGUrbp80iY3dpy0heuFSP/X15W, hAFSFEgUKm, 2026-07-18 08:04:43, 2026-07-18 08:04:43)) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(370): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(275): Illuminate\\Database\\Eloquent\\Factories\\Factory->Illuminate\\Database\\Eloquent\\Factories\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(365): Illuminate\\Support\\Collection->each()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(321): Illuminate\\Database\\Eloquent\\Factories\\Factory->store()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(315): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#13 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(20): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate\\Database\\Eloquent\\Model::withoutEvents()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database\\Seeders\\DatabaseSeeder->Illuminate\\Database\\Console\\Seeds\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#34 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#36 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#40 /home/findartmw/public_html/area25/routes/web.php(63): Illuminate\\Support\\Facades\\Facade::__callStatic()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#88 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#89 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users_email_unique' at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\MySqlConnection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(370): Illuminate\\Database\\Eloquent\\Model->save()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(275): Illuminate\\Database\\Eloquent\\Factories\\Factory->Illuminate\\Database\\Eloquent\\Factories\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(365): Illuminate\\Support\\Collection->each()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(321): Illuminate\\Database\\Eloquent\\Factories\\Factory->store()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(315): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#15 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(20): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate\\Database\\Eloquent\\Model::withoutEvents()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database\\Seeders\\DatabaseSeeder->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#34 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#36 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#38 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#42 /home/findartmw/public_html/area25/routes/web.php(63): Illuminate\\Support\\Facades\\Facade::__callStatic()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#90 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#91 {main}
"} 
[2026-07-18 08:05:28] production.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users_email_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `users` (`name`, `email`, `email_verified_at`, `password`, `remember_token`, `updated_at`, `created_at`) values (Test User, test@example.com, 2026-07-18 08:05:28, $2y$12$Vf2NGuvHoMDm8bAoMyUG4O7potCezktEz4eg/6XwPztFod/57mgyO, aJisMi3b9a, 2026-07-18 08:05:28, 2026-07-18 08:05:28)) {"userId":1,"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users_email_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `users` (`name`, `email`, `email_verified_at`, `password`, `remember_token`, `updated_at`, `created_at`) values (Test User, test@example.com, 2026-07-18 08:05:28, $2y$12$Vf2NGuvHoMDm8bAoMyUG4O7potCezktEz4eg/6XwPztFod/57mgyO, aJisMi3b9a, 2026-07-18 08:05:28, 2026-07-18 08:05:28)) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(370): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(275): Illuminate\\Database\\Eloquent\\Factories\\Factory->Illuminate\\Database\\Eloquent\\Factories\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(365): Illuminate\\Support\\Collection->each()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(321): Illuminate\\Database\\Eloquent\\Factories\\Factory->store()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(315): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#13 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(20): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate\\Database\\Eloquent\\Model::withoutEvents()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database\\Seeders\\DatabaseSeeder->Illuminate\\Database\\Console\\Seeds\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#34 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#36 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#40 /home/findartmw/public_html/area25/routes/web.php(63): Illuminate\\Support\\Facades\\Facade::__callStatic()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#88 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#89 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'test@example.com' for key 'users_email_unique' at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\MySqlConnection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(370): Illuminate\\Database\\Eloquent\\Model->save()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Collections/Traits/EnumeratesValues.php(275): Illuminate\\Database\\Eloquent\\Factories\\Factory->Illuminate\\Database\\Eloquent\\Factories\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(365): Illuminate\\Support\\Collection->each()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(321): Illuminate\\Database\\Eloquent\\Factories\\Factory->store()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Factories/Factory.php(315): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#15 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(20): Illuminate\\Database\\Eloquent\\Factories\\Factory->create()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasEvents.php(454): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/WithoutModelEvents.php(17): Illuminate\\Database\\Eloquent\\Model::withoutEvents()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Database\\Seeders\\DatabaseSeeder->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#34 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#36 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#37 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#38 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#42 /home/findartmw/public_html/area25/routes/web.php(63): Illuminate\\Support\\Facades\\Facade::__callStatic()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#90 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#91 {main}
"} 
[2026-07-18 08:11:29] production.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:11:29, 2026-07-18 08:11:29)) {"userId":1,"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:11:29, 2026-07-18 08:11:29)) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#23 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#44 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#48 /home/findartmw/public_html/area25/routes/web.php(63): Illuminate\\Support\\Facades\\Facade::__callStatic()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#96 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#97 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\MySqlConnection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#16 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#44 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#45 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#46 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#50 /home/findartmw/public_html/area25/routes/web.php(63): Illuminate\\Support\\Facades\\Facade::__callStatic()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#98 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#99 {main}
"} 
[2026-07-18 08:12:14] production.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:12:14, 2026-07-18 08:12:14)) {"userId":1,"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:12:14, 2026-07-18 08:12:14)) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#23 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#52 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#54 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#55 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#56 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#60 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#101 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#102 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#103 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#104 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#105 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#106 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#107 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#108 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#109 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\MySqlConnection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#16 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#54 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#56 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#57 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#58 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#62 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#101 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#102 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#103 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#104 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#105 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#106 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#107 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#108 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#109 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#110 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#111 {main}
"} 
[2026-07-18 08:12:51] production.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:12:51, 2026-07-18 08:12:51)) {"userId":1,"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:12:51, 2026-07-18 08:12:51)) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#23 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#52 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#54 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#55 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#56 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#60 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#101 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#102 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#103 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#104 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#105 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#106 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#107 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#108 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#109 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\MySqlConnection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#16 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#54 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#56 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#57 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#58 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#62 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#101 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#102 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#103 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#104 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#105 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#106 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#107 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#108 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#109 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#110 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#111 {main}
"} 
[2026-07-18 08:16:49] production.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:16:49, 2026-07-18 08:16:49)) {"userId":1,"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_stock_report, View Stock Report, Stock, 2026-07-18 08:16:49, 2026-07-18 08:16:49)) at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#23 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#52 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#54 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#55 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#56 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#60 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#101 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#102 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#103 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#104 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#105 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#106 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#107 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#108 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#109 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_stock_report' for key 'permissions_name_unique' at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\MySqlConnection->Illuminate\\Database\\{closure}()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#16 /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php(207): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\PermissionSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#54 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#56 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#57 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#58 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#62 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#101 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#102 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#103 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#104 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#105 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#106 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#107 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#108 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#109 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#110 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#111 {main}
"} 
[2026-07-18 08:31:59] production.ERROR: Class "Database\Seeders\Seeder" not found {"userId":1,"exception":"[object] (Error(code: 0): Class \"Database\\Seeders\\Seeder\" not found at /home/findartmw/public_html/area25/database/seeders/PermissionSeeder.php:8)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/composer/ClassLoader.php(576): include()
#1 /home/findartmw/public_html/area25/vendor/composer/ClassLoader.php(427): Composer\\Autoload\\{closure}()
#2 [internal function]: Composer\\Autoload\\ClassLoader->loadClass()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(1000): ReflectionClass->__construct()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(986): Illuminate\\Container\\Container->getConcreteBindingFromAttributes()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(926): Illuminate\\Container\\Container->getConcrete()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#11 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#28 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#40 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#42 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#43 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#44 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#48 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#96 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#97 {main}
"} 
[2026-07-18 08:34:06] production.ERROR: Target class [Database\Seeders\CategorySeeder] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [Database\\Seeders\\CategorySeeder] does not exist. at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate\\Container\\Container->build()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#6 /home/findartmw/public_html/area25/database/seeders/ProductSeeder.php(28): Illuminate\\Database\\Seeder->call()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\ProductSeeder->run()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#15 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#44 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#46 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#47 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#48 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#52 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#100 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#101 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"Database\\Seeders\\CategorySeeder\" does not exist at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate\\Container\\Container->build()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#7 /home/findartmw/public_html/area25/database/seeders/ProductSeeder.php(28): Illuminate\\Database\\Seeder->call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\ProductSeeder->run()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#16 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#33 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#45 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#47 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#48 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#49 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#53 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#101 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#102 {main}
"} 
[2026-07-18 08:37:22] production.ERROR: Target class [Database\Seeders\CategorySeeder] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [Database\\Seeders\\CategorySeeder] does not exist. at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate\\Container\\Container->build()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#6 /home/findartmw/public_html/area25/database/seeders/ProductSeeder.php(28): Illuminate\\Database\\Seeder->call()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\ProductSeeder->run()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#15 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#44 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#46 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#47 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#48 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#52 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#100 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#101 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"Database\\Seeders\\CategorySeeder\" does not exist at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate\\Container\\Container->build()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#7 /home/findartmw/public_html/area25/database/seeders/ProductSeeder.php(28): Illuminate\\Database\\Seeder->call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\ProductSeeder->run()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#16 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#33 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#45 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#47 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#48 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#49 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#53 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#101 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#102 {main}
"} 
[2026-07-18 08:52:30] production.ERROR: Target class [Database\Seeders\CategorySeeder] does not exist. {"userId":1,"exception":"[object] (Illuminate\\Contracts\\Container\\BindingResolutionException(code: 0): Target class [Database\\Seeders\\CategorySeeder] does not exist. at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php:1124)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate\\Container\\Container->build()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#6 /home/findartmw/public_html/area25/database/seeders/ProductSeeder.php(28): Illuminate\\Database\\Seeder->call()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\ProductSeeder->run()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#15 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#32 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#44 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#46 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#47 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#48 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#52 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#100 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#101 {main}

[previous exception] [object] (ReflectionException(code: -1): Class \"Database\\Seeders\\CategorySeeder\" does not exist at /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php:1122)
[stacktrace]
#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(1122): ReflectionClass->__construct()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(933): Illuminate\\Container\\Container->build()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1078): Illuminate\\Container\\Container->resolve()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(864): Illuminate\\Foundation\\Application->resolve()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1058): Illuminate\\Container\\Container->make()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(129): Illuminate\\Foundation\\Application->make()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(48): Illuminate\\Database\\Seeder->resolve()
#7 /home/findartmw/public_html/area25/database/seeders/ProductSeeder.php(28): Illuminate\\Database\\Seeder->call()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\ProductSeeder->run()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate\\Database\\Seeder->__invoke()
#16 /home/findartmw/public_html/area25/database/seeders/DatabaseSeeder.php(14): Illuminate\\Database\\Seeder->call()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database\\Seeders\\DatabaseSeeder->run()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate\\Container\\Container->call()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate\\Database\\Seeder->Illuminate\\Database\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate\\Database\\Seeder->__invoke()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate\\Database\\Console\\Seeds\\SeedCommand->Illuminate\\Database\\Console\\Seeds\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate\\Database\\Eloquent\\Model::unguarded()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Seeds\\SeedCommand->handle()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#33 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(29): Illuminate\\Console\\Command->runCommand()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(121): Illuminate\\Console\\Command->call()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/FreshCommand.php(97): Illuminate\\Database\\Console\\Migrations\\FreshCommand->runSeeder()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Database\\Console\\Migrations\\FreshCommand->handle()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call()
#45 /home/findartmw/public_html/area25/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run()
#47 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(1102): Illuminate\\Console\\Command->run()
#48 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(356): Symfony\\Component\\Console\\Application->doRunCommand()
#49 /home/findartmw/public_html/area25/vendor/symfony/console/Application.php(195): Symfony\\Component\\Console\\Application->doRun()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call()
#53 /home/findartmw/public_html/area25/routes/web.php(33): Illuminate\\Support\\Facades\\Facade::__callStatic()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar->{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#67 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#68 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#69 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#70 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#71 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#72 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#73 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#74 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#75 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#76 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#77 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#78 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#79 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#80 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#81 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#82 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#83 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#84 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#85 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#86 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#87 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#88 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#89 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#90 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#91 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#92 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#93 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#94 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#95 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#96 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#97 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#98 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#99 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#100 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#101 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#102 {main}
"} 
[2026-07-19 23:17:57] production.INFO: BulkUpload: created or found category {"name":"Pain Killers","id":1,"row":2} 
[2026-07-19 23:17:57] production.INFO: BulkUpload: created or found brand {"name":"Generic","id":1,"row":2} 
[2026-07-19 23:17:57] production.ERROR: BulkUpload: failed to create unit {"name":"Pack","error":"SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'short_name' cannot be null (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `units` (`name`, `short_name`, `allow_decimal`, `updated_at`, `created_at`) values (Pack, ?, 1, 2026-07-19 23:17:57, 2026-07-19 23:17:57))","row":2} 
[2026-07-19 23:17:57] production.INFO: BulkUpload: created or found supplier {"name":"Main Distributor","id":1,"row":2} 
[2026-07-20 16:51:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784559065893","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Lofnac 50mg Tab","sku":"PRD-00005","price":"500.00","selling_price":"500.00","purchase_price":"295.00","quantity":1,"subtotal":500,"product":{"id":5,"name":"Lofnac 50mg Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"295.00","last_purchase_price":"295.00","selling_price":"500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00005","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-20 16:51:08] production.INFO: Stock deduction for product: Lofnac 50mg Tab  
[2026-07-20 16:51:08] production.INFO: Old stock: 10.00  
[2026-07-20 16:51:08] production.INFO: Quantity deducted: 1  
[2026-07-20 16:51:08] production.INFO: New stock: 9  
[2026-07-20 16:51:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784559065893"} 
[2026-07-20 16:51:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784559078975","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6,"product_id":6,"name":"Lofnac SR 100mg","sku":"PRD-00006","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":6,"name":"Lofnac SR 100mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00006","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-20 16:51:25] production.INFO: Stock deduction for product: Lofnac SR 100mg  
[2026-07-20 16:51:25] production.INFO: Old stock: 20.00  
[2026-07-20 16:51:25] production.INFO: Quantity deducted: 1  
[2026-07-20 16:51:25] production.INFO: New stock: 19  
[2026-07-20 16:51:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784559078975"} 
[2026-07-20 16:51:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784559083882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6,"product_id":6,"name":"Lofnac SR 100mg","sku":"PRD-00006","price":"1000.00","selling_price":"1000.00","purchase_price":"475.00","quantity":1,"subtotal":1000,"product":{"id":6,"name":"Lofnac SR 100mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"475.00","last_purchase_price":"475.00","selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00006","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-20 16:51:26] production.INFO: Stock deduction for product: Lofnac SR 100mg  
[2026-07-20 16:51:26] production.INFO: Old stock: 19.00  
[2026-07-20 16:51:26] production.INFO: Quantity deducted: 1  
[2026-07-20 16:51:26] production.INFO: New stock: 18  
[2026-07-20 16:51:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784559083882"} 
[2026-07-21 14:30:51] production.INFO: Stock Adjustment - Initial State {"product_id":"56","previous_quantity":"1.00","previous_selling_price":"28000.00","validated_data":{"product_id":"56","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:30:51] production.INFO: Stock Adjustment - After Quantity Save {"product_id":56,"new_quantity":0.0,"current_stock":0.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:31:15] production.INFO: Stock Adjustment - Initial State {"product_id":"57","previous_quantity":"1.00","previous_selling_price":"17000.00","validated_data":{"product_id":"57","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:31:15] production.INFO: Stock Adjustment - After Quantity Save {"product_id":57,"new_quantity":0.0,"current_stock":0.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:31:34] production.INFO: Stock Adjustment - Initial State {"product_id":"199","previous_quantity":"3.00","previous_selling_price":"6500.00","validated_data":{"product_id":"199","adjustment_type":"subtract","quantity":"3","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:31:34] production.INFO: Stock Adjustment - After Quantity Save {"product_id":199,"new_quantity":0.0,"current_stock":0.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:32:00] production.INFO: Stock Adjustment - Initial State {"product_id":"42","previous_quantity":"2.00","previous_selling_price":"11000.00","validated_data":{"product_id":"42","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:32:00] production.INFO: Stock Adjustment - After Quantity Save {"product_id":42,"new_quantity":1.0,"current_stock":1.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:32:22] production.INFO: Stock Adjustment - Initial State {"product_id":"128","previous_quantity":"10.00","previous_selling_price":"2500.00","validated_data":{"product_id":"128","adjustment_type":"subtract","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:32:22] production.INFO: Stock Adjustment - After Quantity Save {"product_id":128,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:33:02] production.INFO: Stock Adjustment - Initial State {"product_id":"65","previous_quantity":"10.00","previous_selling_price":"3000.00","validated_data":{"product_id":"65","adjustment_type":"subtract","quantity":"7","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:33:02] production.INFO: Stock Adjustment - After Quantity Save {"product_id":65,"new_quantity":3.0,"current_stock":3.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:33:26] production.INFO: Stock Adjustment - Initial State {"product_id":"61","previous_quantity":"10.00","previous_selling_price":"5000.00","validated_data":{"product_id":"61","adjustment_type":"subtract","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:33:26] production.INFO: Stock Adjustment - After Quantity Save {"product_id":61,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:35:00] production.INFO: Stock Adjustment - Initial State {"product_id":"115","previous_quantity":"4.00","previous_selling_price":"6500.00","validated_data":{"product_id":"115","adjustment_type":"subtract","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:35:00] production.INFO: Stock Adjustment - After Quantity Save {"product_id":115,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:35:47] production.INFO: Stock Adjustment - Initial State {"product_id":"2","previous_quantity":"60.00","previous_selling_price":"1500.00","validated_data":{"product_id":"2","adjustment_type":"subtract","quantity":"20","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:35:47] production.INFO: Stock Adjustment - After Quantity Save {"product_id":2,"new_quantity":40.0,"current_stock":40.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:36:17] production.INFO: Stock Adjustment - Initial State {"product_id":"176","previous_quantity":"1.00","previous_selling_price":"0.00","validated_data":{"product_id":"176","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:36:17] production.INFO: Stock Adjustment - After Quantity Save {"product_id":176,"new_quantity":0.0,"current_stock":0.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:40:21] production.INFO: Stock Adjustment - Initial State {"product_id":"112","previous_quantity":"3.00","previous_selling_price":"11000.00","validated_data":{"product_id":"112","adjustment_type":"add","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:40:21] production.INFO: Stock Adjustment - After Quantity Save {"product_id":112,"new_quantity":4.0,"current_stock":4.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:40:44] production.INFO: Stock Adjustment - Initial State {"product_id":"112","previous_quantity":"4.00","previous_selling_price":"11000.00","validated_data":{"product_id":"112","adjustment_type":"subtract","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:40:44] production.INFO: Stock Adjustment - After Quantity Save {"product_id":112,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:41:41] production.INFO: Stock Adjustment - Initial State {"product_id":"111","previous_quantity":"3.00","previous_selling_price":"10000.00","validated_data":{"product_id":"111","adjustment_type":"subtract","quantity":"1","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:41:41] production.INFO: Stock Adjustment - After Quantity Save {"product_id":111,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:42:13] production.INFO: Stock Adjustment - Initial State {"product_id":"38","previous_quantity":"10.00","previous_selling_price":"2500.00","validated_data":{"product_id":"38","adjustment_type":"subtract","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:42:13] production.INFO: Stock Adjustment - After Quantity Save {"product_id":38,"new_quantity":0.0,"current_stock":0.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 14:42:52] production.INFO: Stock Adjustment - Initial State {"product_id":"116","previous_quantity":"4.00","previous_selling_price":"6500.00","validated_data":{"product_id":"116","adjustment_type":"subtract","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-21"}} 
[2026-07-21 14:42:52] production.INFO: Stock Adjustment - After Quantity Save {"product_id":116,"new_quantity":2.0,"current_stock":2.0,"changes_made":"Quantity adjusted"} 
[2026-07-21 16:44:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784645074350","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":133,"product_id":133,"name":"Salbutamol 4 mg","sku":"PRD-00135","price":"1000.00","selling_price":"1000.00","purchase_price":"0.00","quantity":1,"subtotal":1000,"product":{"id":133,"name":"Salbutamol 4 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"1000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00135","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-21 16:44:36] production.INFO: Stock deduction for product: Salbutamol 4 mg  
[2026-07-21 16:44:36] production.INFO: Old stock: 3.00  
[2026-07-21 16:44:36] production.INFO: Quantity deducted: 1  
[2026-07-21 16:44:36] production.INFO: New stock: 2  
[2026-07-21 16:44:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784645074350"} 
[2026-07-22 14:55:35] production.INFO: Product Store - Request Data {"all_data":{"_token":"mhVDionp1qM7CFnDehCCad6KvIZSVIkbfCt7SP8J","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-22 14:55:36] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-22 14:55:36] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00213","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-22 14:55:36"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-22 14:55:36] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PRD-00213' for key 'products_sku_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `supplier_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `expiry_date`, `description`, `business_location`, `product_type`, `current_stock`, `last_purchase_price`, `last_purchase_date`, `updated_at`, `created_at`) values (Ashton and pearsons, ?, 1, 1, 1, 1000.00, 2000.00, PRD-00213, 2.00, ?, ?, EDUC Pharmacy (BL0001), Single, 5.00, 1000.00, 2026-07-22 14:55:36, 2026-07-22 14:55:36, 2026-07-22 14:55:36))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(161): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-22 14:56:05] production.INFO: Product Store - Request Data {"all_data":{"_token":"mhVDionp1qM7CFnDehCCad6KvIZSVIkbfCt7SP8J","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-22 14:56:05] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-22 14:56:05] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00213","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-22 14:56:05"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-22 14:56:05] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PRD-00213' for key 'products_sku_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `supplier_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `expiry_date`, `description`, `business_location`, `product_type`, `current_stock`, `last_purchase_price`, `last_purchase_date`, `updated_at`, `created_at`) values (Ashton and pearsons, ?, 1, 1, 1, 1000.00, 2000.00, PRD-00213, 2.00, ?, ?, EDUC Pharmacy (BL0001), Single, 5.00, 1000.00, 2026-07-22 14:56:05, 2026-07-22 14:56:05, 2026-07-22 14:56:05))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(161): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-22 14:56:31] production.INFO: Product Store - Request Data {"all_data":{"_token":"mhVDionp1qM7CFnDehCCad6KvIZSVIkbfCt7SP8J","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-22 14:56:31] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-22 14:56:31] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00213","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-22 14:56:31"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-22 14:56:31] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PRD-00213' for key 'products_sku_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `supplier_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `expiry_date`, `description`, `business_location`, `product_type`, `current_stock`, `last_purchase_price`, `last_purchase_date`, `updated_at`, `created_at`) values (Ashton and pearsons, ?, 1, 1, 1, 1000.00, 2000.00, PRD-00213, 2.00, ?, ?, EDUC Pharmacy (BL0001), Single, 5.00, 1000.00, 2026-07-22 14:56:31, 2026-07-22 14:56:31, 2026-07-22 14:56:31))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(161): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-22 14:58:33] production.INFO: Product Store - Request Data {"all_data":{"_token":"mhVDionp1qM7CFnDehCCad6KvIZSVIkbfCt7SP8J","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-22 14:58:33] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-22 14:58:33] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00213","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-22 14:58:33"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-22 14:58:33] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PRD-00213' for key 'products_sku_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `supplier_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `expiry_date`, `description`, `business_location`, `product_type`, `current_stock`, `last_purchase_price`, `last_purchase_date`, `updated_at`, `created_at`) values (Ashton and pearsons, ?, 1, 1, 1, 1000.00, 2000.00, PRD-00213, 2.00, ?, ?, EDUC Pharmacy (BL0001), Single, 5.00, 1000.00, 2026-07-22 14:58:33, 2026-07-22 14:58:33, 2026-07-22 14:58:33))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(161): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-22 15:01:41] production.INFO: Product Store - Request Data {"all_data":{"_token":"mhVDionp1qM7CFnDehCCad6KvIZSVIkbfCt7SP8J","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-22 15:01:41] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-22 15:01:41] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00213","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-22 15:01:41"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-22 15:01:41] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'PRD-00213' for key 'products_sku_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `products` (`name`, `unit_id`, `category_id`, `brand_id`, `supplier_id`, `purchase_price`, `selling_price`, `sku`, `alert_quantity`, `expiry_date`, `description`, `business_location`, `product_type`, `current_stock`, `last_purchase_price`, `last_purchase_date`, `updated_at`, `created_at`) values (Ashton and pearsons, ?, 1, 1, 1, 1000.00, 2000.00, PRD-00213, 2.00, ?, ?, EDUC Pharmacy (BL0001), Single, 5.00, 1000.00, 2026-07-22 15:01:41, 2026-07-22 15:01:41, 2026-07-22 15:01:41))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(161): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-22 16:42:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784731369149","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"865.00","quantity":2,"subtotal":400,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"865.00","last_purchase_price":"865.00","selling_price":"200.00","current_stock":"250.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-22 16:42:51] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-07-22 16:42:51] production.INFO: Old stock: 250.00  
[2026-07-22 16:42:51] production.INFO: Quantity deducted: 2  
[2026-07-22 16:42:51] production.INFO: New stock: 248  
[2026-07-22 16:42:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784731369149"} 
[2026-07-23 09:25:21] production.INFO: Product Store - Request Data {"all_data":{"_token":"s5vjbJp0o8MCmQ1YGncEiIrTWZKcYDwO5ERdXjlf","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-23 09:25:21] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-23 09:25:21] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00215","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-23 09:25:21"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-23 09:25:21] production.INFO: Product Store - Product Created {"product_id":218,"product_name":"Ashton and pearsons","product_sku":"PRD-00215"} 
[2026-07-23 09:25:21] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`findartmw_area25`.`stock_histories`, CONSTRAINT `stock_histories_business_location_id_foreign` FOREIGN KEY (`business_location_id`) REFERENCES `locations` (`id`) ON DELETE SET NULL) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `stock_histories` (`product_id`, `type`, `quantity_change`, `new_quantity`, `unit_cost`, `date`, `reference_no`, `customer_supplier`, `business_location_id`, `updated_at`, `created_at`) values (218, Purchase, 5.00, 5.00, 1000.00, 2026-07-23 09:25:21, PUR-20260723-802, Main Distributor, 1, 2026-07-23 09:25:21, 2026-07-23 09:25:21))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(208): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-23 09:25:30] production.INFO: Product Store - Request Data {"all_data":{"_token":"s5vjbJp0o8MCmQ1YGncEiIrTWZKcYDwO5ERdXjlf","name":"Ashton and pearsons","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-23 09:25:30] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-23 09:25:30] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Ashton and pearsons","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00215","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-23 09:25:30"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-23 09:25:30] production.INFO: Product Store - Product Created {"product_id":219,"product_name":"Ashton and pearsons","product_sku":"PRD-00215"} 
[2026-07-23 09:25:30] production.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`findartmw_area25`.`stock_histories`, CONSTRAINT `stock_histories_business_location_id_foreign` FOREIGN KEY (`business_location_id`) REFERENCES `locations` (`id`) ON DELETE SET NULL) (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: insert into `stock_histories` (`product_id`, `type`, `quantity_change`, `new_quantity`, `unit_cost`, `date`, `reference_no`, `customer_supplier`, `business_location_id`, `updated_at`, `created_at`) values (219, Purchase, 5.00, 5.00, 1000.00, 2026-07-23 09:25:30, PUR-20260723-928, Main Distributor, 1, 2026-07-23 09:25:30, 2026-07-23 09:25:30))","error_code":"23000","error_file":"/home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php","error_line":838,"error_trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate\\Database\\MySqlConnection->insert()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate\\Database\\Query\\Processors\\MySqlProcessor->processInsertGetId()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId()
#7 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call()
#14 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(208): Illuminate\\Database\\Eloquent\\Model::__callStatic()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#21 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#60 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#61 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#62 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#63 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#64 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#65 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#66 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#67 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#68 {main}"} 
[2026-07-23 10:01:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784793663361","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":49,"product_id":49,"name":"Lartem Tabs 24s","sku":"PRD-00049","price":"4000.00","selling_price":"4000.00","purchase_price":"2.00","quantity":1,"subtotal":4000,"product":{"id":49,"name":"Lartem Tabs 24s","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2.00","last_purchase_price":"2.00","selling_price":"4000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00049","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-23 10:01:05] production.INFO: Stock deduction for product: Lartem Tabs 24s  
[2026-07-23 10:01:05] production.INFO: Old stock: 20.00  
[2026-07-23 10:01:05] production.INFO: Quantity deducted: 1  
[2026-07-23 10:01:05] production.INFO: New stock: 19  
[2026-07-23 10:01:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784793663361"} 
[2026-07-23 10:01:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784793678772","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"55.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-23 10:01:20] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-07-23 10:01:20] production.INFO: Old stock: 55.00  
[2026-07-23 10:01:20] production.INFO: Quantity deducted: 1  
[2026-07-23 10:01:20] production.INFO: New stock: 54  
[2026-07-23 10:01:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784793678772"} 
[2026-07-23 11:52:59] production.INFO: Product Store - Request Data {"all_data":{"_token":"9tCe46YbLrbpOQgmAc9tSUzTyb5WurBcer2qJ1yg","name":"Philip Brock","sku":"Nemo cupiditate veli","category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"236.00","selling_price":"116.00","description":"Esse dolorem assumen","purchase_quantity":"507.00","alert_quantity":"229.00","expiry_date":"1990-12-10","supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-23 11:52:59] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Philip Brock","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"236.00","selling_price":"116.00","sku":"Nemo cupiditate veli","alert_quantity":"229.00","expiry_date":"1990-12-10","description":"Esse dolorem assumen","purchase_quantity":"507.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-23 11:52:59] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Philip Brock","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"236.00","selling_price":"116.00","sku":"Nemo cupiditate veli","alert_quantity":"229.00","expiry_date":"1990-12-10","description":"Esse dolorem assumen","purchase_quantity":"507.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"507.00","last_purchase_price":"236.00","last_purchase_date":"2026-07-23 11:52:59"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-23 11:52:59] production.INFO: Product Store - Product Created {"product_id":221,"product_name":"Philip Brock","product_sku":"Nemo cupiditate veli"} 
[2026-07-23 11:52:59] production.ERROR: Product Store - Exception Caught {"error_message":"No business location found in the `locations` table. Please create a location record (e.g. \"EDUC Pharmacy (BL0001)\") before adding products or stock.","error_code":0,"error_file":"/home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php","error_line":367,"error_trace":"#0 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(224): App\\Http\\Controllers\\ProductController->getBusinessLocationId()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#7 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#53 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#54 {main}"} 
[2026-07-23 11:56:51] production.INFO: Product Store - Request Data {"all_data":{"_token":"9tCe46YbLrbpOQgmAc9tSUzTyb5WurBcer2qJ1yg","name":"Hakeem Harrington","sku":"In in inventore ut c","category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"118.00","selling_price":"837.00","description":"Minima vel quisquam","purchase_quantity":"693.00","alert_quantity":"38.00","expiry_date":"2018-11-07","supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-23 11:56:51] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Hakeem Harrington","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"118.00","selling_price":"837.00","sku":"In in inventore ut c","alert_quantity":"38.00","expiry_date":"2018-11-07","description":"Minima vel quisquam","purchase_quantity":"693.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-23 11:56:51] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Hakeem Harrington","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"118.00","selling_price":"837.00","sku":"In in inventore ut c","alert_quantity":"38.00","expiry_date":"2018-11-07","description":"Minima vel quisquam","purchase_quantity":"693.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"693.00","last_purchase_price":"118.00","last_purchase_date":"2026-07-23 11:56:51"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-23 11:56:51] production.INFO: Product Store - Product Created {"product_id":222,"product_name":"Hakeem Harrington","product_sku":"In in inventore ut c"} 
[2026-07-23 11:56:51] production.ERROR: Product Store - Exception Caught {"error_message":"No business location found in the `locations` table. Please create a location record (e.g. \"EDUC Pharmacy (BL0001)\") before adding products or stock.","error_code":0,"error_file":"/home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php","error_line":367,"error_trace":"#0 /home/findartmw/public_html/area25/app/Http/Controllers/ProductController.php(224): App\\Http\\Controllers\\ProductController->getBusinessLocationId()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\ProductController->store()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#7 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#14 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#53 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#54 {main}"} 
[2026-07-23 13:09:50] production.INFO: Stock Adjustment - Initial State {"product_id":"135","previous_quantity":"3.00","previous_selling_price":"4000.00","validated_data":{"product_id":"135","adjustment_type":"add","quantity":"4","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-23"}} 
[2026-07-23 13:09:50] production.INFO: Stock Adjustment - After Quantity Save {"product_id":135,"new_quantity":7.0,"current_stock":7.0,"changes_made":"Quantity adjusted"} 
[2026-07-23 14:40:17] production.INFO: Product Store - Request Data {"all_data":{"_token":"9tCe46YbLrbpOQgmAc9tSUzTyb5WurBcer2qJ1yg","name":"Montana Jennings","sku":"Deserunt amet delec","category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"868.00","selling_price":"332.00","description":"Adipisicing est rat","purchase_quantity":"733.00","alert_quantity":"589.00","expiry_date":"2024-11-05","supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-23 14:40:17] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Montana Jennings","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"868.00","selling_price":"332.00","sku":"Deserunt amet delec","alert_quantity":"589.00","expiry_date":"2024-11-05","description":"Adipisicing est rat","purchase_quantity":"733.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-23 14:40:17] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Montana Jennings","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"868.00","selling_price":"332.00","sku":"Deserunt amet delec","alert_quantity":"589.00","expiry_date":"2024-11-05","description":"Adipisicing est rat","purchase_quantity":"733.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"733.00","last_purchase_price":"868.00","last_purchase_date":"2026-07-23 14:40:17"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-23 14:40:17] production.INFO: Product Store - Product Created {"product_id":223,"product_name":"Montana Jennings","product_sku":"Deserunt amet delec"} 
[2026-07-23 17:11:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784819463260","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"865.00","quantity":1,"subtotal":200,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"865.00","last_purchase_price":"865.00","selling_price":"200.00","current_stock":"248.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-22T14:42:51.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-23 17:11:05] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-07-23 17:11:05] production.INFO: Old stock: 248.00  
[2026-07-23 17:11:05] production.INFO: Quantity deducted: 1  
[2026-07-23 17:11:05] production.INFO: New stock: 247  
[2026-07-23 17:11:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784819463260"} 
[2026-07-24 15:46:01] production.INFO: Product Store - Request Data {"all_data":{"_token":"Guyg0ZGgoq1AThnG7Hl3SpZqJcpRBbNjjeZKC033","name":"Malaria Antigen P","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"600.00","selling_price":"1500.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-24 15:46:01] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Malaria Antigen P","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"600.00","selling_price":"1500.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-24 15:46:01] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Malaria Antigen P","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"600.00","selling_price":"1500.00","sku":"PRD-00216","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"600.00","last_purchase_date":"2026-07-24 15:46:01"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-24 15:46:01] production.INFO: Product Store - Product Created {"product_id":225,"product_name":"Malaria Antigen P","product_sku":"PRD-00216"} 
[2026-07-24 15:48:24] production.INFO: Product Store - Request Data {"all_data":{"_token":"Guyg0ZGgoq1AThnG7Hl3SpZqJcpRBbNjjeZKC033","name":"DEPO Injection","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2500.00","description":null,"purchase_quantity":"20.00","alert_quantity":"5.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-24 15:48:24] production.INFO: Product Store - Validation Success {"validated_data":{"name":"DEPO Injection","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2500.00","sku":null,"alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-24 15:48:24] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"DEPO Injection","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2500.00","sku":"PRD-00217","alert_quantity":"5.00","expiry_date":null,"description":null,"purchase_quantity":"20.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"20.00","last_purchase_price":"1000.00","last_purchase_date":"2026-07-24 15:48:24"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-24 15:48:24] production.INFO: Product Store - Product Created {"product_id":226,"product_name":"DEPO Injection","product_sku":"PRD-00217"} 
[2026-07-24 15:48:45] production.INFO: Stock Adjustment - Initial State {"product_id":"113","previous_quantity":"10.00","previous_selling_price":"3500.00","validated_data":{"product_id":"113","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-24"}} 
[2026-07-24 15:48:45] production.INFO: Stock Adjustment - After Quantity Save {"product_id":113,"new_quantity":20.0,"current_stock":20.0,"changes_made":"Quantity adjusted"} 
[2026-07-25 10:56:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784969774801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":122,"product_id":122,"name":"Milk of Magnesia","sku":"PRD-00124","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":122,"name":"Milk of Magnesia","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00124","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 10:56:17] production.INFO: Stock deduction for product: Milk of Magnesia  
[2026-07-25 10:56:17] production.INFO: Old stock: 5.00  
[2026-07-25 10:56:17] production.INFO: Quantity deducted: 1  
[2026-07-25 10:56:17] production.INFO: New stock: 4  
[2026-07-25 10:56:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784969774801"} 
[2026-07-25 10:56:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784969787439","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"865.00","quantity":2,"subtotal":400,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"865.00","last_purchase_price":"865.00","selling_price":"200.00","current_stock":"247.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-23T15:11:05.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 10:56:29] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-07-25 10:56:29] production.INFO: Old stock: 247.00  
[2026-07-25 10:56:29] production.INFO: Quantity deducted: 2  
[2026-07-25 10:56:29] production.INFO: New stock: 245  
[2026-07-25 10:56:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784969787439"} 
[2026-07-25 12:20:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784974812092","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":139,"product_id":139,"name":"Bactrim 480 mg","sku":"PRD-00141","price":"2000.00","selling_price":"2000.00","purchase_price":"0.00","quantity":1,"subtotal":2000,"product":{"id":139,"name":"Bactrim 480 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"2000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00141","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 12:20:15] production.INFO: Stock deduction for product: Bactrim 480 mg  
[2026-07-25 12:20:15] production.INFO: Old stock: 3.00  
[2026-07-25 12:20:15] production.INFO: Quantity deducted: 1  
[2026-07-25 12:20:15] production.INFO: New stock: 2  
[2026-07-25 12:20:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784974812092"} 
[2026-07-25 12:44:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784976294079","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":206,"product_id":206,"name":"Comit-50","sku":"PRD-00208","price":"3500.00","selling_price":"3500.00","purchase_price":"0.00","quantity":4,"subtotal":14000,"product":{"id":206,"name":"Comit-50","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"3500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00208","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 12:44:57] production.INFO: Stock deduction for product: Comit-50  
[2026-07-25 12:44:57] production.INFO: Old stock: 10.00  
[2026-07-25 12:44:57] production.INFO: Quantity deducted: 4  
[2026-07-25 12:44:57] production.INFO: New stock: 6  
[2026-07-25 12:44:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784976294079"} 
[2026-07-25 13:28:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784978916889","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"50.00","quantity":1,"subtotal":1000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"50.00","last_purchase_price":"50.00","selling_price":"1000.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 13:28:41] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-07-25 13:28:41] production.INFO: Old stock: 50.00  
[2026-07-25 13:28:41] production.INFO: Quantity deducted: 1  
[2026-07-25 13:28:41] production.INFO: New stock: 49  
[2026-07-25 13:28:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784978916889"} 
[2026-07-25 14:30:24] production.INFO: Stock Adjustment - Initial State {"product_id":"197","previous_quantity":"1.00","previous_selling_price":"12000.00","validated_data":{"product_id":"197","adjustment_type":"add","quantity":"2","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-25"}} 
[2026-07-25 14:30:24] production.INFO: Stock Adjustment - After Quantity Save {"product_id":197,"new_quantity":3.0,"current_stock":3.0,"changes_made":"Quantity adjusted"} 
[2026-07-25 16:34:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784990093244","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":177,"product_id":177,"name":"Comit-100 Tablets","sku":"PRD-00179","price":"4000.00","selling_price":"4000.00","purchase_price":"0.00","quantity":1,"subtotal":4000,"product":{"id":177,"name":"Comit-100 Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"4000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00179","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 16:34:55] production.INFO: Stock deduction for product: Comit-100 Tablets  
[2026-07-25 16:34:55] production.INFO: Old stock: 5.00  
[2026-07-25 16:34:55] production.INFO: Quantity deducted: 1  
[2026-07-25 16:34:55] production.INFO: New stock: 4  
[2026-07-25 16:34:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784990093244"} 
[2026-07-25 16:54:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784991247967","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":205,"product_id":205,"name":"Comit-100 Gel","sku":"PRD-00207","price":"1500.00","selling_price":"1500.00","purchase_price":"0.00","quantity":1,"subtotal":1500,"product":{"id":205,"name":"Comit-100 Gel","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00207","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 16:54:12] production.INFO: Stock deduction for product: Comit-100 Gel  
[2026-07-25 16:54:12] production.INFO: Old stock: 10.00  
[2026-07-25 16:54:12] production.INFO: Quantity deducted: 1  
[2026-07-25 16:54:12] production.INFO: New stock: 9  
[2026-07-25 16:54:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784991247967"} 
[2026-07-25 17:27:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784993222882","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":135,"product_id":135,"name":"Davir Tablets","sku":"PRD-00137","price":"4000.00","selling_price":"4000.00","purchase_price":"0.00","quantity":2,"subtotal":8000,"product":{"id":135,"name":"Davir Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"4000.00","current_stock":"7.00","stock":"7.00","product_type":"Single","tax":null,"sku":"PRD-00137","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-23","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-23T11:09:50.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 17:27:04] production.INFO: Stock deduction for product: Davir Tablets  
[2026-07-25 17:27:04] production.INFO: Old stock: 7.00  
[2026-07-25 17:27:04] production.INFO: Quantity deducted: 2  
[2026-07-25 17:27:04] production.INFO: New stock: 5  
[2026-07-25 17:27:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784993222882"} 
[2026-07-25 17:27:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1784993239578","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Albendazole 400mg Tabs (1s)","sku":"PRD-00069","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":68,"name":"Albendazole 400mg Tabs (1s)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00069","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-25 17:27:21] production.INFO: Stock deduction for product: Albendazole 400mg Tabs (1s)  
[2026-07-25 17:27:21] production.INFO: Old stock: 10.00  
[2026-07-25 17:27:21] production.INFO: Quantity deducted: 1  
[2026-07-25 17:27:21] production.INFO: New stock: 9  
[2026-07-25 17:27:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1784993239578"} 
[2026-07-26 17:18:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785079126504","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":171,"product_id":171,"name":"Elagra 100 mg","sku":"PRD-00173","price":"4000.00","selling_price":"4000.00","purchase_price":"0.00","quantity":1,"subtotal":4000,"product":{"id":171,"name":"Elagra 100 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"4000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00173","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-26 17:18:49] production.INFO: Stock deduction for product: Elagra 100 mg  
[2026-07-26 17:18:49] production.INFO: Old stock: 7.00  
[2026-07-26 17:18:49] production.INFO: Quantity deducted: 1  
[2026-07-26 17:18:49] production.INFO: New stock: 6  
[2026-07-26 17:18:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785079126504"} 
[2026-07-26 17:19:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785079145016","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Albendazole 400mg Tabs (1s)","sku":"PRD-00069","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":68,"name":"Albendazole 400mg Tabs (1s)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00069","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-25T15:27:21.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-26 17:19:06] production.INFO: Stock deduction for product: Albendazole 400mg Tabs (1s)  
[2026-07-26 17:19:06] production.INFO: Old stock: 9.00  
[2026-07-26 17:19:06] production.INFO: Quantity deducted: 1  
[2026-07-26 17:19:06] production.INFO: New stock: 8  
[2026-07-26 17:19:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785079145016"} 
[2026-07-26 17:19:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785079161712","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"Ibuprofen 1000","sku":"PRD-00106","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":104,"name":"Ibuprofen 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"55.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00106","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-26 17:19:23] production.INFO: Stock deduction for product: Ibuprofen 1000  
[2026-07-26 17:19:23] production.INFO: Old stock: 55.00  
[2026-07-26 17:19:23] production.INFO: Quantity deducted: 1  
[2026-07-26 17:19:23] production.INFO: New stock: 54  
[2026-07-26 17:19:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785079161712"} 
[2026-07-26 17:19:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785079182809","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"865.00","quantity":1,"subtotal":200,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"865.00","last_purchase_price":"865.00","selling_price":"200.00","current_stock":"245.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-25T08:56:29.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-26 17:19:44] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-07-26 17:19:44] production.INFO: Old stock: 245.00  
[2026-07-26 17:19:44] production.INFO: Quantity deducted: 1  
[2026-07-26 17:19:44] production.INFO: New stock: 244  
[2026-07-26 17:19:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785079182809"} 
[2026-07-27 09:33:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785137611110","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":94,"product_id":94,"name":"HGC Pregnacy Test Strip (1500)","sku":"PRD-00096","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":94,"name":"HGC Pregnacy Test Strip (1500)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00096","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-27 09:33:33] production.INFO: Stock deduction for product: HGC Pregnacy Test Strip (1500)  
[2026-07-27 09:33:33] production.INFO: Old stock: 10.00  
[2026-07-27 09:33:33] production.INFO: Quantity deducted: 2  
[2026-07-27 09:33:33] production.INFO: New stock: 8  
[2026-07-27 09:33:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785137611110"} 
[2026-07-27 10:10:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785139829270","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"0.00","quantity":2,"subtotal":600,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"300.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-27 10:10:31] production.INFO: Stock deduction for product: Face Mask  
[2026-07-27 10:10:31] production.INFO: Old stock: 50.00  
[2026-07-27 10:10:31] production.INFO: Quantity deducted: 2  
[2026-07-27 10:10:31] production.INFO: New stock: 48  
[2026-07-27 10:10:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785139829270"} 
[2026-07-27 15:05:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785157549557","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":131,"product_id":131,"name":"Abucap","sku":"PRD-00133","price":"1500.00","selling_price":"1500.00","purchase_price":"740.00","quantity":1,"subtotal":1500,"product":{"id":131,"name":"Abucap","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"740.00","last_purchase_price":"740.00","selling_price":"1500.00","current_stock":"25.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00133","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:24:18.000000Z","updated_at":"2026-07-19T21:24:18.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-27 15:05:52] production.INFO: Stock deduction for product: Abucap  
[2026-07-27 15:05:52] production.INFO: Old stock: 25.00  
[2026-07-27 15:05:52] production.INFO: Quantity deducted: 1  
[2026-07-27 15:05:52] production.INFO: New stock: 24  
[2026-07-27 15:05:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785157549557"} 
[2026-07-27 15:06:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785157573124","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":7,"product_id":7,"name":"Lofnac P Tab","sku":"PRD-00007","price":"1500.00","selling_price":"1500.00","purchase_price":"675.00","quantity":1,"subtotal":1500,"product":{"id":7,"name":"Lofnac P Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"675.00","last_purchase_price":"675.00","selling_price":"1500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00007","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-27 15:06:15] production.INFO: Stock deduction for product: Lofnac P Tab  
[2026-07-27 15:06:15] production.INFO: Old stock: 20.00  
[2026-07-27 15:06:15] production.INFO: Quantity deducted: 1  
[2026-07-27 15:06:15] production.INFO: New stock: 19  
[2026-07-27 15:06:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785157573124"} 
[2026-07-27 15:06:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785157617454","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"0.00","quantity":1,"subtotal":500,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"500.00","current_stock":"100.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-27 15:07:00] production.INFO: Stock deduction for product: Zangra-100  
[2026-07-27 15:07:00] production.INFO: Old stock: 100.00  
[2026-07-27 15:07:00] production.INFO: Quantity deducted: 1  
[2026-07-27 15:07:00] production.INFO: New stock: 99  
[2026-07-27 15:07:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785157617454"} 
[2026-07-27 16:31:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785162706787","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"Amoxyl","sku":"PRD-00138","price":"3500.00","selling_price":"3500.00","purchase_price":"0.00","quantity":2,"subtotal":7000,"product":{"id":136,"name":"Amoxyl","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":1,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"3500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00138","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-23T12:42:34.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":null}}],"payment_method":"cash"}} 
[2026-07-27 16:31:49] production.INFO: Stock deduction for product: Amoxyl  
[2026-07-27 16:31:49] production.INFO: Old stock: 3.00  
[2026-07-27 16:31:49] production.INFO: Quantity deducted: 2  
[2026-07-27 16:31:49] production.INFO: New stock: 1  
[2026-07-27 16:31:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785162706787"} 
[2026-07-27 16:47:03] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1785163621079","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"Amoxyl","sku":"PRD-00138","price":"3500.00","selling_price":"3500.00","purchase_price":"0.00","quantity":1,"subtotal":3500,"product":{"id":136,"name":"Amoxyl","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":1,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"3500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00138","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-27T14:31:49.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":null}},{"id":131,"product_id":131,"name":"Abucap","sku":"PRD-00133","price":"1500.00","selling_price":"1500.00","purchase_price":"740.00","quantity":1,"subtotal":1500,"product":{"id":131,"name":"Abucap","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"740.00","last_purchase_price":"740.00","selling_price":"1500.00","current_stock":"24.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00133","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:24:18.000000Z","updated_at":"2026-07-27T13:05:52.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-27 16:47:03] production.INFO: Stock deduction for product: Amoxyl  
[2026-07-27 16:47:03] production.INFO: Old stock: 1.00  
[2026-07-27 16:47:03] production.INFO: Quantity deducted: 1  
[2026-07-27 16:47:03] production.INFO: New stock: 0  
[2026-07-27 16:47:03] production.INFO: Stock deduction for product: Abucap  
[2026-07-27 16:47:03] production.INFO: Old stock: 24.00  
[2026-07-27 16:47:03] production.INFO: Quantity deducted: 1  
[2026-07-27 16:47:03] production.INFO: New stock: 23  
[2026-07-27 16:47:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785163621079"} 
[2026-07-28 08:28:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785220132588","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":49,"product_id":49,"name":"Lartem Tabs 24s","sku":"PRD-00049","price":"4000.00","selling_price":"4000.00","purchase_price":"2.00","quantity":1,"subtotal":4000,"product":{"id":49,"name":"Lartem Tabs 24s","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2.00","last_purchase_price":"2.00","selling_price":"4000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00049","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-23T08:01:05.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-28 08:28:54] production.INFO: Stock deduction for product: Lartem Tabs 24s  
[2026-07-28 08:28:54] production.INFO: Old stock: 19.00  
[2026-07-28 08:28:54] production.INFO: Quantity deducted: 1  
[2026-07-28 08:28:54] production.INFO: New stock: 18  
[2026-07-28 08:28:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785220132588"} 
[2026-07-28 09:12:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785222743703","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":171,"product_id":171,"name":"Elagra 100 mg","sku":"PRD-00173","price":"4000.00","selling_price":"4000.00","purchase_price":"0.00","quantity":1,"subtotal":4000,"product":{"id":171,"name":"Elagra 100 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"4000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00173","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-26T15:18:49.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-28 09:12:26] production.INFO: Stock deduction for product: Elagra 100 mg  
[2026-07-28 09:12:26] production.INFO: Old stock: 6.00  
[2026-07-28 09:12:26] production.INFO: Quantity deducted: 1  
[2026-07-28 09:12:26] production.INFO: New stock: 5  
[2026-07-28 09:12:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785222743703"} 
[2026-07-28 14:21:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785241292390","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2.00","last_purchase_price":"2.00","selling_price":"4000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-28 14:21:34] production.INFO: Stock deduction for product: Unosecure  
[2026-07-28 14:21:34] production.INFO: Old stock: 20.00  
[2026-07-28 14:21:34] production.INFO: Quantity deducted: 1  
[2026-07-28 14:21:34] production.INFO: New stock: 19  
[2026-07-28 14:21:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785241292390"} 
[2026-07-29 09:58:06] production.INFO: Stock Adjustment - Initial State {"product_id":"208","previous_quantity":"1.00","previous_selling_price":"2500.00","validated_data":{"product_id":"208","adjustment_type":"add","quantity":"9","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-07-29"}} 
[2026-07-29 09:58:06] production.INFO: Stock Adjustment - After Quantity Save {"product_id":208,"new_quantity":10.0,"current_stock":10.0,"changes_made":"Quantity adjusted"} 
[2026-07-29 09:59:13] production.INFO: Stock Adjustment - Initial State {"product_id":"136","previous_quantity":"0.00","previous_selling_price":"3500.00","validated_data":{"product_id":"136","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":"4000.00","new_purchase_price":null,"new_expiry_date":"2026-07-29"}} 
[2026-07-29 09:59:13] production.INFO: Stock Adjustment - After Quantity Save {"product_id":136,"new_quantity":5.0,"current_stock":5.0,"changes_made":"Quantity adjusted"} 
[2026-07-29 10:01:40] production.INFO: Product Store - Request Data {"all_data":{"_token":"4hMDToJ0p7dQjhoY9o9d3SLNOasPaKngvJW53jTF","name":"Indomethacine 25 MG( Indocid)","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"500.00","selling_price":"1000.00","description":null,"purchase_quantity":"5.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-07-29 10:01:40] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Indomethacine 25 MG( Indocid)","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-07-29 10:01:40] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Indomethacine 25 MG( Indocid)","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":"PRD-00218","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"5.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"5.00","last_purchase_price":"500.00","last_purchase_date":"2026-07-29 10:01:40"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-07-29 10:01:40] production.INFO: Product Store - Product Created {"product_id":227,"product_name":"Indomethacine 25 MG( Indocid)","product_sku":"PRD-00218"} 
[2026-07-29 10:38:46] production.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1785314323195","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":110,"product_id":110,"name":"Polygel Tab","sku":"PRD-00112","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":5,"subtotal":7500,"product":{"id":110,"name":"Polygel Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00112","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}},{"id":121,"product_id":121,"name":"Panadol Extra","sku":"PRD-00123","price":"400.00","selling_price":"400.00","purchase_price":"200.00","quantity":6,"subtotal":2400,"product":{"id":121,"name":"Panadol Extra","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"200.00","last_purchase_price":"200.00","selling_price":"400.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00123","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 10:38:46] production.INFO: Stock deduction for product: Polygel Tab  
[2026-07-29 10:38:46] production.INFO: Old stock: 20.00  
[2026-07-29 10:38:46] production.INFO: Quantity deducted: 5  
[2026-07-29 10:38:46] production.INFO: New stock: 15  
[2026-07-29 10:38:46] production.INFO: Stock deduction for product: Panadol Extra  
[2026-07-29 10:38:46] production.INFO: Old stock: 50.00  
[2026-07-29 10:38:46] production.INFO: Quantity deducted: 6  
[2026-07-29 10:38:46] production.INFO: New stock: 44  
[2026-07-29 10:38:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785314323195"} 
[2026-07-29 10:39:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785314348617","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":208,"product_id":208,"name":"Doxyleb","sku":"PRD-00210","price":"2500.00","selling_price":"2500.00","purchase_price":"0.00","quantity":1,"subtotal":2500,"product":{"id":208,"name":"Doxyleb","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"2500.00","current_stock":"10.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00210","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-29","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-29T07:58:06.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 10:39:10] production.INFO: Stock deduction for product: Doxyleb  
[2026-07-29 10:39:10] production.INFO: Old stock: 10.00  
[2026-07-29 10:39:10] production.INFO: Quantity deducted: 1  
[2026-07-29 10:39:10] production.INFO: New stock: 9  
[2026-07-29 10:39:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785314348617"} 
[2026-07-29 10:39:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785314382913","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":93,"product_id":93,"name":"One -step Pregnacy Test Strip (1000)","sku":"PRD-00095","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":93,"name":"One -step Pregnacy Test Strip (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00095","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 10:39:44] production.INFO: Stock deduction for product: One -step Pregnacy Test Strip (1000)  
[2026-07-29 10:39:44] production.INFO: Old stock: 20.00  
[2026-07-29 10:39:44] production.INFO: Quantity deducted: 1  
[2026-07-29 10:39:44] production.INFO: New stock: 19  
[2026-07-29 10:39:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785314382913"} 
[2026-07-29 11:19:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785316750244","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"0.00","quantity":1,"subtotal":500,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"0.00","last_purchase_price":"0.00","selling_price":"500.00","current_stock":"99.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-27T13:07:00.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 11:19:12] production.INFO: Stock deduction for product: Zangra-100  
[2026-07-29 11:19:12] production.INFO: Old stock: 99.00  
[2026-07-29 11:19:12] production.INFO: Quantity deducted: 1  
[2026-07-29 11:19:12] production.INFO: New stock: 98  
[2026-07-29 11:19:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785316750244"} 
[2026-07-29 12:38:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785321483302","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-23T08:01:20.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 12:38:05] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-07-29 12:38:05] production.INFO: Old stock: 54.00  
[2026-07-29 12:38:05] production.INFO: Quantity deducted: 1  
[2026-07-29 12:38:05] production.INFO: New stock: 53  
[2026-07-29 12:38:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785321483302"} 
[2026-07-29 14:59:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785329947323","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2.00","last_purchase_price":"2.00","selling_price":"4000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-28T12:21:34.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 14:59:10] production.INFO: Stock deduction for product: Unosecure  
[2026-07-29 14:59:10] production.INFO: Old stock: 19.00  
[2026-07-29 14:59:10] production.INFO: Quantity deducted: 1  
[2026-07-29 14:59:10] production.INFO: New stock: 18  
[2026-07-29 14:59:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785329947323"} 
[2026-07-29 14:59:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785329960737","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"Indomethacine 25 MG( Indocid)","sku":"PRD-00218","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":227,"name":"Indomethacine 25 MG( Indocid)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00218","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-29","created_at":"2026-07-29T08:01:40.000000Z","updated_at":"2026-07-29T08:01:40.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-07-29 14:59:22] production.INFO: Stock deduction for product: Indomethacine 25 MG( Indocid)  
[2026-07-29 14:59:22] production.INFO: Old stock: 5.00  
[2026-07-29 14:59:22] production.INFO: Quantity deducted: 1  
[2026-07-29 14:59:22] production.INFO: New stock: 4  
[2026-07-29 14:59:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785329960737"} 
[2026-07-29 16:40:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785336023450","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":61,"product_id":61,"name":"Miclocin Cream 15mg","sku":"PRD-00062","price":"5000.00","selling_price":"5000.00","purchase_price":"2.00","quantity":1,"subtotal":5000,"product":{"id":61,"name":"Miclocin Cream 15mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2.00","last_purchase_price":"2.00","selling_price":"5000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00062","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-21","last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-21T12:33:26.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 16:40:27] production.INFO: Stock deduction for product: Miclocin Cream 15mg  
[2026-07-29 16:40:27] production.INFO: Old stock: 5.00  
[2026-07-29 16:40:27] production.INFO: Quantity deducted: 1  
[2026-07-29 16:40:27] production.INFO: New stock: 4  
[2026-07-29 16:40:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785336023450"} 
[2026-07-29 16:43:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785336226123","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":1,"subtotal":200,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"244.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-26T15:19:44.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-29 16:43:48] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-07-29 16:43:48] production.INFO: Old stock: 244.00  
[2026-07-29 16:43:48] production.INFO: Quantity deducted: 1  
[2026-07-29 16:43:48] production.INFO: New stock: 243  
[2026-07-29 16:43:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785336226123"} 
[2026-07-30 12:29:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785407358789","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"Prednisolone 5 mg","sku":"PRD-00142","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":140,"name":"Prednisolone 5 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00142","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-30 12:29:21] production.INFO: Stock deduction for product: Prednisolone 5 mg  
[2026-07-30 12:29:21] production.INFO: Old stock: 3.00  
[2026-07-30 12:29:21] production.INFO: Quantity deducted: 1  
[2026-07-30 12:29:21] production.INFO: New stock: 2  
[2026-07-30 12:29:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785407358789"} 
[2026-07-30 16:36:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785422158270","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":133,"product_id":133,"name":"Salbutamol 4 mg","sku":"PRD-00135","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":133,"name":"Salbutamol 4 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00135","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T14:44:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-30 16:36:00] production.INFO: Stock deduction for product: Salbutamol 4 mg  
[2026-07-30 16:36:00] production.INFO: Old stock: 2.00  
[2026-07-30 16:36:00] production.INFO: Quantity deducted: 1  
[2026-07-30 16:36:00] production.INFO: New stock: 1  
[2026-07-30 16:36:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785422158270"} 
[2026-07-30 16:36:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785422168587","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-29T12:59:10.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-30 16:36:10] production.INFO: Stock deduction for product: Unosecure  
[2026-07-30 16:36:10] production.INFO: Old stock: 18.00  
[2026-07-30 16:36:10] production.INFO: Quantity deducted: 1  
[2026-07-30 16:36:10] production.INFO: New stock: 17  
[2026-07-30 16:36:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785422168587"} 
[2026-07-31 17:14:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785510883088","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-29T10:38:05.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-31 17:14:45] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-07-31 17:14:45] production.INFO: Old stock: 53.00  
[2026-07-31 17:14:45] production.INFO: Quantity deducted: 1  
[2026-07-31 17:14:45] production.INFO: New stock: 52  
[2026-07-31 17:14:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785510883088"} 
[2026-07-31 17:18:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785511118566","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":126,"product_id":126,"name":"Manyuchi Premium","sku":"PRD-00128","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":126,"name":"Manyuchi Premium","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00128","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-31 17:18:39] production.INFO: Stock deduction for product: Manyuchi Premium  
[2026-07-31 17:18:39] production.INFO: Old stock: 10.00  
[2026-07-31 17:18:39] production.INFO: Quantity deducted: 1  
[2026-07-31 17:18:39] production.INFO: New stock: 9  
[2026-07-31 17:18:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785511118566"} 
[2026-07-31 17:21:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785511281727","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":129,"product_id":129,"name":"Enderm-GM Cream 30g","sku":"PRD-00131","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":129,"name":"Enderm-GM Cream 30g","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00131","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-31 17:21:23] production.INFO: Stock deduction for product: Enderm-GM Cream 30g  
[2026-07-31 17:21:23] production.INFO: Old stock: 5.00  
[2026-07-31 17:21:23] production.INFO: Quantity deducted: 1  
[2026-07-31 17:21:23] production.INFO: New stock: 4  
[2026-07-31 17:21:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785511281727"} 
[2026-07-31 17:22:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785511335207","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":95,"product_id":95,"name":"Coldrid","sku":"PRD-00097","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":95,"name":"Coldrid","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00097","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-31 17:22:15] production.INFO: Stock deduction for product: Coldrid  
[2026-07-31 17:22:15] production.INFO: Old stock: 10.00  
[2026-07-31 17:22:15] production.INFO: Quantity deducted: 1  
[2026-07-31 17:22:15] production.INFO: New stock: 9  
[2026-07-31 17:22:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785511335207"} 
[2026-07-31 17:24:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785511454041","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":2,"subtotal":600,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-27T08:10:31.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-07-31 17:24:14] production.INFO: Stock deduction for product: Face Mask  
[2026-07-31 17:24:14] production.INFO: Old stock: 48.00  
[2026-07-31 17:24:14] production.INFO: Quantity deducted: 2  
[2026-07-31 17:24:14] production.INFO: New stock: 46  
[2026-07-31 17:24:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785511454041"} 
[2026-08-01 17:09:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785596967459","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6,"product_id":6,"name":"Lofnac SR 100mg","sku":"PRD-00006","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":6,"name":"Lofnac SR 100mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00006","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-20T14:52:06.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-01 17:09:29] production.INFO: Stock deduction for product: Lofnac SR 100mg  
[2026-08-01 17:09:29] production.INFO: Old stock: 19.00  
[2026-08-01 17:09:29] production.INFO: Quantity deducted: 1  
[2026-08-01 17:09:29] production.INFO: New stock: 18  
[2026-08-01 17:09:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785596967459"} 
[2026-08-01 17:10:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785596998463","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"98.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-29T09:19:12.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-01 17:10:00] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-01 17:10:00] production.INFO: Old stock: 98.00  
[2026-08-01 17:10:00] production.INFO: Quantity deducted: 2  
[2026-08-01 17:10:00] production.INFO: New stock: 96  
[2026-08-01 17:10:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785596998463"} 
[2026-08-03 19:30:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785778214151","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Lofnac 50mg Tab","sku":"PRD-00005","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":1,"subtotal":500,"product":{"id":5,"name":"Lofnac 50mg Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00005","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-20T14:51:08.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-03 19:30:16] production.INFO: Stock deduction for product: Lofnac 50mg Tab  
[2026-08-03 19:30:16] production.INFO: Old stock: 9.00  
[2026-08-03 19:30:16] production.INFO: Quantity deducted: 1  
[2026-08-03 19:30:16] production.INFO: New stock: 8  
[2026-08-03 19:30:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785778214151"} 
[2026-08-03 19:30:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785778257372","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":11,"product_id":11,"name":"Ibuprofen 200mg (Ibut)","sku":"PRD-00011","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":11,"name":"Ibuprofen 200mg (Ibut)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00011","image":null,"description":"10","alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-03 19:30:59] production.INFO: Stock deduction for product: Ibuprofen 200mg (Ibut)  
[2026-08-03 19:30:59] production.INFO: Old stock: 10.00  
[2026-08-03 19:30:59] production.INFO: Quantity deducted: 1  
[2026-08-03 19:30:59] production.INFO: New stock: 9  
[2026-08-03 19:30:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785778257372"} 
[2026-08-03 19:32:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785778317646","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":7,"product_id":7,"name":"Lofnac P Tab","sku":"PRD-00007","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":7,"name":"Lofnac P Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00007","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-27T13:06:15.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-03 19:32:00] production.INFO: Stock deduction for product: Lofnac P Tab  
[2026-08-03 19:32:00] production.INFO: Old stock: 19.00  
[2026-08-03 19:32:00] production.INFO: Quantity deducted: 1  
[2026-08-03 19:32:00] production.INFO: New stock: 18  
[2026-08-03 19:32:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785778317646"} 
[2026-08-03 19:32:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785778345801","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"Indomethacine 25 MG( Indocid)","sku":"PRD-00218","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":227,"name":"Indomethacine 25 MG( Indocid)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00218","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-29","created_at":"2026-07-29T08:01:40.000000Z","updated_at":"2026-07-29T12:59:22.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-08-03 19:32:27] production.INFO: Stock deduction for product: Indomethacine 25 MG( Indocid)  
[2026-08-03 19:32:27] production.INFO: Old stock: 4.00  
[2026-08-03 19:32:27] production.INFO: Quantity deducted: 1  
[2026-08-03 19:32:27] production.INFO: New stock: 3  
[2026-08-03 19:32:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785778345801"} 
[2026-08-04 17:06:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785855971901","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":208,"product_id":208,"name":"Doxyleb","sku":"PRD-00210","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":208,"name":"Doxyleb","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"9.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00210","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-29","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-29T08:39:10.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:06:13] production.INFO: Stock deduction for product: Doxyleb  
[2026-08-04 17:06:13] production.INFO: Old stock: 9.00  
[2026-08-04 17:06:13] production.INFO: Quantity deducted: 1  
[2026-08-04 17:06:13] production.INFO: New stock: 8  
[2026-08-04 17:06:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785855971901"} 
[2026-08-04 17:06:30] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785855988881","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"Amoxyl","sku":"PRD-00138","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":2,"subtotal":8000,"product":{"id":136,"name":"Amoxyl","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":1,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"5.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00138","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-29","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-29T07:59:13.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:06:30] production.INFO: Stock deduction for product: Amoxyl  
[2026-08-04 17:06:30] production.INFO: Old stock: 5.00  
[2026-08-04 17:06:30] production.INFO: Quantity deducted: 2  
[2026-08-04 17:06:30] production.INFO: New stock: 3  
[2026-08-04 17:06:30] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785855988881"} 
[2026-08-04 17:06:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785856005793","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6,"product_id":6,"name":"Lofnac SR 100mg","sku":"PRD-00006","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":6,"name":"Lofnac SR 100mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00006","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-01T15:09:29.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:06:46] production.INFO: Stock deduction for product: Lofnac SR 100mg  
[2026-08-04 17:06:46] production.INFO: Old stock: 18.00  
[2026-08-04 17:06:46] production.INFO: Quantity deducted: 1  
[2026-08-04 17:06:46] production.INFO: New stock: 17  
[2026-08-04 17:06:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785856005793"} 
[2026-08-04 17:06:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785856016138","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":1,"subtotal":300,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-31T15:24:14.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:06:57] production.INFO: Stock deduction for product: Face Mask  
[2026-08-04 17:06:57] production.INFO: Old stock: 46.00  
[2026-08-04 17:06:57] production.INFO: Quantity deducted: 1  
[2026-08-04 17:06:57] production.INFO: New stock: 45  
[2026-08-04 17:06:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785856016138"} 
[2026-08-04 17:07:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785856034393","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":1,"subtotal":200,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"243.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-29T14:43:48.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:07:15] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-04 17:07:15] production.INFO: Old stock: 243.00  
[2026-08-04 17:07:15] production.INFO: Quantity deducted: 1  
[2026-08-04 17:07:15] production.INFO: New stock: 242  
[2026-08-04 17:07:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785856034393"} 
[2026-08-04 17:07:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785856057798","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"52.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-31T15:14:45.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:07:38] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-04 17:07:38] production.INFO: Old stock: 52.00  
[2026-08-04 17:07:38] production.INFO: Quantity deducted: 1  
[2026-08-04 17:07:38] production.INFO: New stock: 51  
[2026-08-04 17:07:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785856057798"} 
[2026-08-04 17:07:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785856072253","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"Indomethacine 25 MG( Indocid)","sku":"PRD-00218","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":227,"name":"Indomethacine 25 MG( Indocid)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00218","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-29","created_at":"2026-07-29T08:01:40.000000Z","updated_at":"2026-08-03T17:32:27.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-08-04 17:07:53] production.INFO: Stock deduction for product: Indomethacine 25 MG( Indocid)  
[2026-08-04 17:07:53] production.INFO: Old stock: 3.00  
[2026-08-04 17:07:53] production.INFO: Quantity deducted: 1  
[2026-08-04 17:07:53] production.INFO: New stock: 2  
[2026-08-04 17:07:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785856072253"} 
[2026-08-04 17:08:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1785856087412","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"Ibuprofen 1000","sku":"PRD-00106","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":104,"name":"Ibuprofen 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00106","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-26T15:19:23.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-04 17:08:08] production.INFO: Stock deduction for product: Ibuprofen 1000  
[2026-08-04 17:08:08] production.INFO: Old stock: 54.00  
[2026-08-04 17:08:08] production.INFO: Quantity deducted: 1  
[2026-08-04 17:08:08] production.INFO: New stock: 53  
[2026-08-04 17:08:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1785856087412"} 
[2026-08-06 13:36:11] production.INFO: Stock Adjustment - Initial State {"product_id":"136","previous_quantity":"3.00","previous_selling_price":"4000.00","validated_data":{"product_id":"136","adjustment_type":"add","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-08-06"}} 
[2026-08-06 13:36:11] production.INFO: Stock Adjustment - After Quantity Save {"product_id":136,"new_quantity":13.0,"current_stock":13.0,"changes_made":"Quantity adjusted"} 
[2026-08-06 13:37:25] production.INFO: Product Store - Request Data {"all_data":{"_token":"wzR8S0nKhZVJ2KmrhFX1k0R8dXopgXQocbwSBdqV","name":"Praziquantel","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"500.00","selling_price":"1000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-08-06 13:37:25] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Praziquantel","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-08-06 13:37:25] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Praziquantel","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"500.00","selling_price":"1000.00","sku":"PRD-00219","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"500.00","last_purchase_date":"2026-08-06 13:37:25"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-08-06 13:37:25] production.INFO: Product Store - Product Created {"product_id":228,"product_name":"Praziquantel","product_sku":"PRD-00219"} 
[2026-08-06 13:39:52] production.INFO: Product Store - Request Data {"all_data":{"_token":"wzR8S0nKhZVJ2KmrhFX1k0R8dXopgXQocbwSBdqV","name":"Super wegra","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"8.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-08-06 13:39:52] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Super wegra","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"8.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-08-06 13:39:52] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Super wegra","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00220","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"8.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"8.00","last_purchase_price":"1000.00","last_purchase_date":"2026-08-06 13:39:52"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-08-06 13:39:52] production.INFO: Product Store - Product Created {"product_id":229,"product_name":"Super wegra","product_sku":"PRD-00220"} 
[2026-08-06 13:40:24] production.INFO: Product Store - Request Data {"all_data":{"_token":"wzR8S0nKhZVJ2KmrhFX1k0R8dXopgXQocbwSBdqV","name":"Fenamex","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1000.00","selling_price":"2000.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-08-06 13:40:24] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Fenamex","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-08-06 13:40:24] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Fenamex","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1000.00","selling_price":"2000.00","sku":"PRD-00221","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"1000.00","last_purchase_date":"2026-08-06 13:40:24"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-08-06 13:40:24] production.INFO: Product Store - Product Created {"product_id":230,"product_name":"Fenamex","product_sku":"PRD-00221"} 
[2026-08-06 13:41:39] production.INFO: Product Store - Request Data {"all_data":{"_token":"wzR8S0nKhZVJ2KmrhFX1k0R8dXopgXQocbwSBdqV","name":"Coldril Capsules","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"5000.00","selling_price":"10000.00","description":null,"purchase_quantity":"2.00","alert_quantity":"1.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-08-06 13:41:39] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Coldril Capsules","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"5000.00","selling_price":"10000.00","sku":null,"alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-08-06 13:41:39] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Coldril Capsules","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"5000.00","selling_price":"10000.00","sku":"PRD-00222","alert_quantity":"1.00","expiry_date":null,"description":null,"purchase_quantity":"2.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"2.00","last_purchase_price":"5000.00","last_purchase_date":"2026-08-06 13:41:39"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-08-06 13:41:39] production.INFO: Product Store - Product Created {"product_id":231,"product_name":"Coldril Capsules","product_sku":"PRD-00222"} 
[2026-08-06 13:51:23] production.INFO: Stock Adjustment - Initial State {"product_id":"136","previous_quantity":"13.00","previous_selling_price":"4000.00","validated_data":{"product_id":"136","adjustment_type":"subtract","quantity":"10","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-08-06"}} 
[2026-08-06 13:51:23] production.INFO: Stock Adjustment - After Quantity Save {"product_id":136,"new_quantity":3.0,"current_stock":3.0,"changes_made":"Quantity adjusted"} 
[2026-08-06 13:52:07] production.INFO: Product Store - Request Data {"all_data":{"_token":"wzR8S0nKhZVJ2KmrhFX1k0R8dXopgXQocbwSBdqV","name":"Amoxycillin 250mg Tabs for Oral Suspension","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"1500.00","selling_price":"3000.00","description":null,"purchase_quantity":"10.00","alert_quantity":"2.00","expiry_date":null,"supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-08-06 13:52:07] production.INFO: Product Store - Validation Success {"validated_data":{"name":"Amoxycillin 250mg Tabs for Oral Suspension","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":null,"alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00"},"category_id_value":"1","brand_id_value":"1"} 
[2026-08-06 13:52:07] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Amoxycillin 250mg Tabs for Oral Suspension","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"1500.00","selling_price":"3000.00","sku":"PRD-00223","alert_quantity":"2.00","expiry_date":null,"description":null,"purchase_quantity":"10.00","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"10.00","last_purchase_price":"1500.00","last_purchase_date":"2026-08-06 13:52:07"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-08-06 13:52:07] production.INFO: Product Store - Product Created {"product_id":232,"product_name":"Amoxycillin 250mg Tabs for Oral Suspension","product_sku":"PRD-00223"} 
[2026-08-06 17:02:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786028540589","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":1,"subtotal":300,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-04T15:06:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-06 17:02:21] production.INFO: Stock deduction for product: Face Mask  
[2026-08-06 17:02:21] production.INFO: Old stock: 45.00  
[2026-08-06 17:02:21] production.INFO: Quantity deducted: 1  
[2026-08-06 17:02:21] production.INFO: New stock: 44  
[2026-08-06 17:02:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786028540589"} 
[2026-08-06 17:02:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786028563672","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":2,"subtotal":400,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"242.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-04T15:07:15.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-06 17:02:44] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-06 17:02:44] production.INFO: Old stock: 242.00  
[2026-08-06 17:02:44] production.INFO: Quantity deducted: 2  
[2026-08-06 17:02:44] production.INFO: New stock: 240  
[2026-08-06 17:02:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786028563672"} 
[2026-08-06 17:03:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786028584244","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Sinurrhon Tablet (120)","sku":"PRD-00004","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":4,"name":"Sinurrhon Tablet (120)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"100.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-06 17:03:05] production.INFO: Stock deduction for product: Sinurrhon Tablet (120)  
[2026-08-06 17:03:05] production.INFO: Old stock: 100.00  
[2026-08-06 17:03:05] production.INFO: Quantity deducted: 1  
[2026-08-06 17:03:05] production.INFO: New stock: 99  
[2026-08-06 17:03:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786028584244"} 
[2026-08-07 17:08:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786115309351","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":95,"product_id":95,"name":"Coldrid","sku":"PRD-00097","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":95,"name":"Coldrid","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00097","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-31T15:22:15.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-07 17:08:32] production.INFO: Stock deduction for product: Coldrid  
[2026-08-07 17:08:32] production.INFO: Old stock: 9.00  
[2026-08-07 17:08:32] production.INFO: Quantity deducted: 1  
[2026-08-07 17:08:32] production.INFO: New stock: 8  
[2026-08-07 17:08:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786115309351"} 
[2026-08-07 17:09:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786115383291","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":50,"product_id":50,"name":"Magnesium Tabs 1000","sku":"PRD-00050","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":50,"name":"Magnesium Tabs 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"55.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00050","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-07 17:09:45] production.INFO: Stock deduction for product: Magnesium Tabs 1000  
[2026-08-07 17:09:45] production.INFO: Old stock: 55.00  
[2026-08-07 17:09:45] production.INFO: Quantity deducted: 1  
[2026-08-07 17:09:45] production.INFO: New stock: 54  
[2026-08-07 17:09:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786115383291"} 
[2026-08-07 17:10:07] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786115405968","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":123,"product_id":123,"name":"Water Plaster","sku":"PRD-00125","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":1,"subtotal":200,"product":{"id":123,"name":"Water Plaster","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"100.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00125","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-07 17:10:07] production.INFO: Stock deduction for product: Water Plaster  
[2026-08-07 17:10:07] production.INFO: Old stock: 100.00  
[2026-08-07 17:10:07] production.INFO: Quantity deducted: 1  
[2026-08-07 17:10:07] production.INFO: New stock: 99  
[2026-08-07 17:10:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786115405968"} 
[2026-08-07 17:10:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786115418234","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":46,"product_id":46,"name":"Beclomin Cream Big","sku":"PRD-00046","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":46,"name":"Beclomin Cream Big","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00046","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-07 17:10:19] production.INFO: Stock deduction for product: Beclomin Cream Big  
[2026-08-07 17:10:19] production.INFO: Old stock: 5.00  
[2026-08-07 17:10:19] production.INFO: Quantity deducted: 1  
[2026-08-07 17:10:19] production.INFO: New stock: 4  
[2026-08-07 17:10:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786115418234"} 
[2026-08-07 17:11:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786115460694","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"Ibuprofen 1000","sku":"PRD-00106","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":104,"name":"Ibuprofen 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00106","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-04T15:08:08.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-07 17:11:02] production.INFO: Stock deduction for product: Ibuprofen 1000  
[2026-08-07 17:11:02] production.INFO: Old stock: 53.00  
[2026-08-07 17:11:02] production.INFO: Quantity deducted: 1  
[2026-08-07 17:11:02] production.INFO: New stock: 52  
[2026-08-07 17:11:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786115460694"} 
[2026-08-07 17:12:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786115519438","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":1,"subtotal":500,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"96.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-01T15:10:00.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-07 17:12:01] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-07 17:12:01] production.INFO: Old stock: 96.00  
[2026-08-07 17:12:01] production.INFO: Quantity deducted: 1  
[2026-08-07 17:12:01] production.INFO: New stock: 95  
[2026-08-07 17:12:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786115519438"} 
[2026-08-08 17:06:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786201571489","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":2,"subtotal":600,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"44.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-06T15:02:21.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-08 17:06:12] production.INFO: Stock deduction for product: Face Mask  
[2026-08-08 17:06:12] production.INFO: Old stock: 44.00  
[2026-08-08 17:06:12] production.INFO: Quantity deducted: 2  
[2026-08-08 17:06:12] production.INFO: New stock: 42  
[2026-08-08 17:06:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786201571489"} 
[2026-08-08 17:06:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786201585642","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":8,"product_id":8,"name":"Lofnac MR Tab","sku":"PRD-00008","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":8,"name":"Lofnac MR Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"20.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00008","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-08 17:06:26] production.INFO: Stock deduction for product: Lofnac MR Tab  
[2026-08-08 17:06:26] production.INFO: Old stock: 20.00  
[2026-08-08 17:06:26] production.INFO: Quantity deducted: 1  
[2026-08-08 17:06:26] production.INFO: New stock: 19  
[2026-08-08 17:06:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786201585642"} 
[2026-08-08 17:06:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786201600037","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-30T14:36:10.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-08 17:06:42] production.INFO: Stock deduction for product: Unosecure  
[2026-08-08 17:06:42] production.INFO: Old stock: 17.00  
[2026-08-08 17:06:42] production.INFO: Quantity deducted: 1  
[2026-08-08 17:06:42] production.INFO: New stock: 16  
[2026-08-08 17:06:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786201600037"} 
[2026-08-08 17:06:56] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786201615051","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":15,"product_id":15,"name":"Funbact A Cream Big","sku":"PRD-00015","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":15,"name":"Funbact A Cream Big","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00015","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-08 17:06:56] production.INFO: Stock deduction for product: Funbact A Cream Big  
[2026-08-08 17:06:56] production.INFO: Old stock: 5.00  
[2026-08-08 17:06:56] production.INFO: Quantity deducted: 1  
[2026-08-08 17:06:56] production.INFO: New stock: 4  
[2026-08-08 17:06:56] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786201615051"} 
[2026-08-09 16:55:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786287322655","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6,"product_id":6,"name":"Lofnac SR 100mg","sku":"PRD-00006","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":6,"name":"Lofnac SR 100mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00006","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-04T15:06:46.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-09 16:55:23] production.INFO: Stock deduction for product: Lofnac SR 100mg  
[2026-08-09 16:55:23] production.INFO: Old stock: 17.00  
[2026-08-09 16:55:23] production.INFO: Quantity deducted: 1  
[2026-08-09 16:55:23] production.INFO: New stock: 16  
[2026-08-09 16:55:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786287322655"} 
[2026-08-09 16:55:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786287332298","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":1,"subtotal":300,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"42.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-08T15:06:12.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-09 16:55:33] production.INFO: Stock deduction for product: Face Mask  
[2026-08-09 16:55:33] production.INFO: Old stock: 42.00  
[2026-08-09 16:55:33] production.INFO: Quantity deducted: 1  
[2026-08-09 16:55:33] production.INFO: New stock: 41  
[2026-08-09 16:55:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786287332298"} 
[2026-08-10 16:57:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786373841477","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-08T15:06:42.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-10 16:57:23] production.INFO: Stock deduction for product: Unosecure  
[2026-08-10 16:57:23] production.INFO: Old stock: 16.00  
[2026-08-10 16:57:23] production.INFO: Quantity deducted: 1  
[2026-08-10 16:57:23] production.INFO: New stock: 15  
[2026-08-10 16:57:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786373841477"} 
[2026-08-10 16:57:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786373854657","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":145,"product_id":145,"name":"Cronolyn Sodium","sku":"PRD-00147","price":"20000.00","selling_price":"20000.00","purchase_price":"10000.00","quantity":1,"subtotal":20000,"product":{"id":145,"name":"Cronolyn Sodium","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"10000.00","last_purchase_price":"10000.00","selling_price":"20000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00147","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-10 16:57:35] production.INFO: Stock deduction for product: Cronolyn Sodium  
[2026-08-10 16:57:35] production.INFO: Old stock: 1.00  
[2026-08-10 16:57:35] production.INFO: Quantity deducted: 1  
[2026-08-10 16:57:35] production.INFO: New stock: 0  
[2026-08-10 16:57:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786373854657"} 
[2026-08-10 16:57:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786373868282","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":126,"product_id":126,"name":"Manyuchi Premium","sku":"PRD-00128","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":126,"name":"Manyuchi Premium","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00128","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-31T15:18:39.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-10 16:57:49] production.INFO: Stock deduction for product: Manyuchi Premium  
[2026-08-10 16:57:49] production.INFO: Old stock: 9.00  
[2026-08-10 16:57:49] production.INFO: Quantity deducted: 1  
[2026-08-10 16:57:49] production.INFO: New stock: 8  
[2026-08-10 16:57:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786373868282"} 
[2026-08-10 17:02:22] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786374140019","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":210,"product_id":210,"name":"AcNesol","sku":"PRD-00212","price":"15000.00","selling_price":"15000.00","purchase_price":"7500.00","quantity":1,"subtotal":15000,"product":{"id":210,"name":"AcNesol","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"7500.00","last_purchase_price":"7500.00","selling_price":"15000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00212","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-10 17:02:22] production.INFO: Stock deduction for product: AcNesol  
[2026-08-10 17:02:22] production.INFO: Old stock: 1.00  
[2026-08-10 17:02:22] production.INFO: Quantity deducted: 1  
[2026-08-10 17:02:22] production.INFO: New stock: 0  
[2026-08-10 17:02:22] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786374140019"} 
[2026-08-11 17:02:08] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786460526349","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":7,"product_id":7,"name":"Lofnac P Tab","sku":"PRD-00007","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":7,"name":"Lofnac P Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"18.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00007","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-03T17:32:00.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-11 17:02:08] production.INFO: Stock deduction for product: Lofnac P Tab  
[2026-08-11 17:02:08] production.INFO: Old stock: 18.00  
[2026-08-11 17:02:08] production.INFO: Quantity deducted: 1  
[2026-08-11 17:02:08] production.INFO: New stock: 17  
[2026-08-11 17:02:08] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786460526349"} 
[2026-08-12 16:53:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786546437827","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":6,"product_id":6,"name":"Lofnac SR 100mg","sku":"PRD-00006","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":6,"name":"Lofnac SR 100mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00006","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-09T14:55:23.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-12 16:53:58] production.INFO: Stock deduction for product: Lofnac SR 100mg  
[2026-08-12 16:53:58] production.INFO: Old stock: 16.00  
[2026-08-12 16:53:58] production.INFO: Quantity deducted: 1  
[2026-08-12 16:53:58] production.INFO: New stock: 15  
[2026-08-12 16:53:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786546437827"} 
[2026-08-12 16:54:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786546451968","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":61,"product_id":61,"name":"Miclocin Cream 15mg","sku":"PRD-00062","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":61,"name":"Miclocin Cream 15mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"4.00","stock":"5.00","product_type":"Single","tax":null,"sku":"PRD-00062","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-21","last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-29T14:40:27.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-12 16:54:13] production.INFO: Stock deduction for product: Miclocin Cream 15mg  
[2026-08-12 16:54:13] production.INFO: Old stock: 4.00  
[2026-08-12 16:54:13] production.INFO: Quantity deducted: 1  
[2026-08-12 16:54:13] production.INFO: New stock: 3  
[2026-08-12 16:54:13] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786546451968"} 
[2026-08-12 16:54:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786546476814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":7,"product_id":7,"name":"Lofnac P Tab","sku":"PRD-00007","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":7,"name":"Lofnac P Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"17.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00007","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-11T15:02:08.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-12 16:54:37] production.INFO: Stock deduction for product: Lofnac P Tab  
[2026-08-12 16:54:37] production.INFO: Old stock: 17.00  
[2026-08-12 16:54:37] production.INFO: Quantity deducted: 1  
[2026-08-12 16:54:37] production.INFO: New stock: 16  
[2026-08-12 16:54:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786546476814"} 
[2026-08-13 16:58:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786633124664","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":133,"product_id":133,"name":"Salbutamol 4 mg","sku":"PRD-00135","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":133,"name":"Salbutamol 4 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00135","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-30T14:36:00.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-13 16:58:45] production.INFO: Stock deduction for product: Salbutamol 4 mg  
[2026-08-13 16:58:45] production.INFO: Old stock: 1.00  
[2026-08-13 16:58:45] production.INFO: Quantity deducted: 1  
[2026-08-13 16:58:45] production.INFO: New stock: 0  
[2026-08-13 16:58:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786633124664"} 
[2026-08-13 16:59:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786633140034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"49.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-25T11:28:41.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-13 16:59:00] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-08-13 16:59:00] production.INFO: Old stock: 49.00  
[2026-08-13 16:59:00] production.INFO: Quantity deducted: 1  
[2026-08-13 16:59:00] production.INFO: New stock: 48  
[2026-08-13 16:59:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786633140034"} 
[2026-08-14 17:22:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786720939503","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":121,"product_id":121,"name":"Panadol Extra","sku":"PRD-00123","price":"400.00","selling_price":"400.00","purchase_price":"200.00","quantity":1,"subtotal":400,"product":{"id":121,"name":"Panadol Extra","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"200.00","last_purchase_price":"200.00","selling_price":"400.00","current_stock":"44.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00123","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-29T08:38:46.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-14 17:22:19] production.INFO: Stock deduction for product: Panadol Extra  
[2026-08-14 17:22:19] production.INFO: Old stock: 44.00  
[2026-08-14 17:22:19] production.INFO: Quantity deducted: 1  
[2026-08-14 17:22:19] production.INFO: New stock: 43  
[2026-08-14 17:22:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786720939503"} 
[2026-08-14 17:22:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786720956405","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":105,"product_id":105,"name":"Aspirin 300mg (1000)","sku":"PRD-00107","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":105,"name":"Aspirin 300mg (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"55.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00107","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-14 17:22:35] production.INFO: Stock deduction for product: Aspirin 300mg (1000)  
[2026-08-14 17:22:35] production.INFO: Old stock: 55.00  
[2026-08-14 17:22:35] production.INFO: Quantity deducted: 1  
[2026-08-14 17:22:35] production.INFO: New stock: 54  
[2026-08-14 17:22:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786720956405"} 
[2026-08-15 17:05:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786806341814","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":106,"product_id":106,"name":"Junior Aspirin 75mg (1000)","sku":"PRD-00108","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":106,"name":"Junior Aspirin 75mg (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"33.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00108","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-15 17:05:43] production.INFO: Stock deduction for product: Junior Aspirin 75mg (1000)  
[2026-08-15 17:05:43] production.INFO: Old stock: 33.00  
[2026-08-15 17:05:43] production.INFO: Quantity deducted: 1  
[2026-08-15 17:05:43] production.INFO: New stock: 32  
[2026-08-15 17:05:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786806341814"} 
[2026-08-15 18:58:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786813095793","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":166,"product_id":166,"name":"Zinc Oxide 5 cm","sku":"PRD-00168","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":166,"name":"Zinc Oxide 5 cm","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00168","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-15 18:58:17] production.INFO: Stock deduction for product: Zinc Oxide 5 cm  
[2026-08-15 18:58:17] production.INFO: Old stock: 2.00  
[2026-08-15 18:58:17] production.INFO: Quantity deducted: 1  
[2026-08-15 18:58:17] production.INFO: New stock: 1  
[2026-08-15 18:58:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786813095793"} 
[2026-08-15 18:59:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786813155121","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-07T15:12:01.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-15 18:59:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786813152148","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-07T15:12:01.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-15 18:59:19] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-15 18:59:19] production.INFO: Old stock: 95.00  
[2026-08-15 18:59:19] production.INFO: Quantity deducted: 2  
[2026-08-15 18:59:19] production.INFO: New stock: 93  
[2026-08-15 18:59:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786813152148"} 
[2026-08-15 18:59:19] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-15 18:59:19] production.INFO: Old stock: 95.00  
[2026-08-15 18:59:19] production.INFO: Quantity deducted: 2  
[2026-08-15 18:59:19] production.INFO: New stock: 93  
[2026-08-15 18:59:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786813155121"} 
[2026-08-15 18:59:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786813157593","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-07T15:12:01.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-15 18:59:19] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-15 18:59:19] production.INFO: Old stock: 93.00  
[2026-08-15 18:59:19] production.INFO: Quantity deducted: 2  
[2026-08-15 18:59:19] production.INFO: New stock: 91  
[2026-08-15 18:59:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786813157593"} 
[2026-08-15 18:59:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786813158779","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-07T15:12:01.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-15 18:59:20] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-15 18:59:20] production.INFO: Old stock: 91.00  
[2026-08-15 18:59:20] production.INFO: Quantity deducted: 2  
[2026-08-15 18:59:20] production.INFO: New stock: 89  
[2026-08-15 18:59:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786813158779"} 
[2026-08-17 18:54:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786985698717","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"15.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-10T14:57:23.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-17 18:54:59] production.INFO: Stock deduction for product: Unosecure  
[2026-08-17 18:54:59] production.INFO: Old stock: 15.00  
[2026-08-17 18:54:59] production.INFO: Quantity deducted: 1  
[2026-08-17 18:54:59] production.INFO: New stock: 14  
[2026-08-17 18:54:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786985698717"} 
[2026-08-17 18:55:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1786985724395","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":1,"subtotal":200,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"240.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-06T15:02:44.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-17 18:55:25] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-17 18:55:25] production.INFO: Old stock: 240.00  
[2026-08-17 18:55:25] production.INFO: Quantity deducted: 1  
[2026-08-17 18:55:25] production.INFO: New stock: 239  
[2026-08-17 18:55:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1786985724395"} 
[2026-08-18 16:58:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787065108330","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"Ibuprofen 1000","sku":"PRD-00106","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":104,"name":"Ibuprofen 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"52.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00106","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-07T15:11:02.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-18 16:58:28] production.INFO: Stock deduction for product: Ibuprofen 1000  
[2026-08-18 16:58:28] production.INFO: Old stock: 52.00  
[2026-08-18 16:58:28] production.INFO: Quantity deducted: 1  
[2026-08-18 16:58:28] production.INFO: New stock: 51  
[2026-08-18 16:58:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787065108330"} 
[2026-08-18 16:58:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787065123319","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"51.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-04T15:07:38.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-18 16:58:43] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-18 16:58:43] production.INFO: Old stock: 51.00  
[2026-08-18 16:58:43] production.INFO: Quantity deducted: 1  
[2026-08-18 16:58:43] production.INFO: New stock: 50  
[2026-08-18 16:58:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787065123319"} 
[2026-08-18 16:58:58] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787065138529","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-18T14:58:43.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-18 16:58:58] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-18 16:58:58] production.INFO: Old stock: 50.00  
[2026-08-18 16:58:58] production.INFO: Quantity deducted: 1  
[2026-08-18 16:58:58] production.INFO: New stock: 49  
[2026-08-18 16:58:58] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787065138529"} 
[2026-08-18 16:59:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787065149916","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"Amoxyl","sku":"PRD-00138","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":136,"name":"Amoxyl","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":1,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"3.00","stock":"3.00","product_type":"Single","tax":null,"sku":"PRD-00138","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-08-06","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-06T11:51:23.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":null}}],"payment_method":"cash"}} 
[2026-08-18 16:59:10] production.INFO: Stock deduction for product: Amoxyl  
[2026-08-18 16:59:10] production.INFO: Old stock: 3.00  
[2026-08-18 16:59:10] production.INFO: Quantity deducted: 1  
[2026-08-18 16:59:10] production.INFO: New stock: 2  
[2026-08-18 16:59:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787065149916"} 
[2026-08-18 16:59:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787065160048","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":17,"product_id":17,"name":"Multivit G Caps","sku":"PRD-00017","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":17,"name":"Multivit G Caps","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00017","image":null,"description":"6","alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-18 16:59:20] production.INFO: Stock deduction for product: Multivit G Caps  
[2026-08-18 16:59:20] production.INFO: Old stock: 3.00  
[2026-08-18 16:59:20] production.INFO: Quantity deducted: 1  
[2026-08-18 16:59:20] production.INFO: New stock: 2  
[2026-08-18 16:59:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787065160048"} 
[2026-08-18 17:05:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787065517879","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":204,"product_id":204,"name":"Voltjem","sku":"PRD-00206","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":204,"name":"Voltjem","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00206","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-18 17:05:18] production.INFO: Stock deduction for product: Voltjem  
[2026-08-18 17:05:18] production.INFO: Old stock: 10.00  
[2026-08-18 17:05:18] production.INFO: Quantity deducted: 1  
[2026-08-18 17:05:18] production.INFO: New stock: 9  
[2026-08-18 17:05:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787065517879"} 
[2026-08-19 17:00:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787151617910","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":232,"product_id":232,"name":"Amoxycillin 250mg Tabs for Oral Suspension","sku":"PRD-00223","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":232,"name":"Amoxycillin 250mg Tabs for Oral Suspension","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00223","image":null,"description":null,"alert_quantity":"2.00","expiry_date":null,"last_purchase_date":"2026-08-06","created_at":"2026-08-06T11:52:07.000000Z","updated_at":"2026-08-06T11:52:07.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-08-19 17:00:18] production.INFO: Stock deduction for product: Amoxycillin 250mg Tabs for Oral Suspension  
[2026-08-19 17:00:18] production.INFO: Old stock: 10.00  
[2026-08-19 17:00:18] production.INFO: Quantity deducted: 1  
[2026-08-19 17:00:18] production.INFO: New stock: 9  
[2026-08-19 17:00:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787151617910"} 
[2026-08-19 17:00:40] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787151639896","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"14.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-17T16:54:59.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-19 17:00:40] production.INFO: Stock deduction for product: Unosecure  
[2026-08-19 17:00:40] production.INFO: Old stock: 14.00  
[2026-08-19 17:00:40] production.INFO: Quantity deducted: 1  
[2026-08-19 17:00:40] production.INFO: New stock: 13  
[2026-08-19 17:00:40] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787151639896"} 
[2026-08-19 17:00:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787151652541","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"Amoxyl","sku":"PRD-00138","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":136,"name":"Amoxyl","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":1,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"2.00","stock":"3.00","product_type":"Single","tax":null,"sku":"PRD-00138","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-08-06","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-18T14:59:10.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":null}}],"payment_method":"cash"}} 
[2026-08-19 17:00:53] production.INFO: Stock deduction for product: Amoxyl  
[2026-08-19 17:00:53] production.INFO: Old stock: 2.00  
[2026-08-19 17:00:53] production.INFO: Quantity deducted: 1  
[2026-08-19 17:00:53] production.INFO: New stock: 1  
[2026-08-19 17:00:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787151652541"} 
[2026-08-19 17:01:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787151662748","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"49.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-18T14:58:58.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-19 17:01:03] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-19 17:01:03] production.INFO: Old stock: 49.00  
[2026-08-19 17:01:03] production.INFO: Quantity deducted: 1  
[2026-08-19 17:01:03] production.INFO: New stock: 48  
[2026-08-19 17:01:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787151662748"} 
[2026-08-19 17:01:12] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787151671712","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Sinurrhon Tablet (120)","sku":"PRD-00004","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":4,"name":"Sinurrhon Tablet (120)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"99.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-06T15:03:05.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-19 17:01:12] production.INFO: Stock deduction for product: Sinurrhon Tablet (120)  
[2026-08-19 17:01:12] production.INFO: Old stock: 99.00  
[2026-08-19 17:01:12] production.INFO: Quantity deducted: 1  
[2026-08-19 17:01:12] production.INFO: New stock: 98  
[2026-08-19 17:01:12] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787151671712"} 
[2026-08-20 15:06:26] production.INFO: Stock Adjustment - Initial State {"product_id":"82","previous_quantity":"240.00","previous_selling_price":"3000.00","validated_data":{"product_id":"82","adjustment_type":"add","quantity":null,"reason":"new_stock","new_selling_price":"300.00","new_purchase_price":null,"new_expiry_date":"2026-08-20"}} 
[2026-08-20 15:06:26] production.INFO: Stock Adjustment - After Price-Only Save {"product_id":82,"new_selling_price":"300.00","current_stock":"240.00","changes_made":"Prices updated only"} 
[2026-08-20 17:06:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787238400921","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":4,"subtotal":1200,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"41.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-09T14:55:33.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-20 17:06:45] production.INFO: Stock deduction for product: Face Mask  
[2026-08-20 17:06:45] production.INFO: Old stock: 41.00  
[2026-08-20 17:06:45] production.INFO: Quantity deducted: 4  
[2026-08-20 17:06:45] production.INFO: New stock: 37  
[2026-08-20 17:06:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787238400921"} 
[2026-08-20 17:07:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787238422381","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"Prednisolone 5 mg","sku":"PRD-00142","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":140,"name":"Prednisolone 5 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00142","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-30T10:29:21.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-20 17:07:02] production.INFO: Stock deduction for product: Prednisolone 5 mg  
[2026-08-20 17:07:02] production.INFO: Old stock: 2.00  
[2026-08-20 17:07:02] production.INFO: Quantity deducted: 1  
[2026-08-20 17:07:02] production.INFO: New stock: 1  
[2026-08-20 17:07:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787238422381"} 
[2026-08-20 17:07:28] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787238448032","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-19T15:01:03.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-20 17:07:28] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-20 17:07:28] production.INFO: Old stock: 48.00  
[2026-08-20 17:07:28] production.INFO: Quantity deducted: 2  
[2026-08-20 17:07:28] production.INFO: New stock: 46  
[2026-08-20 17:07:28] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787238448032"} 
[2026-08-20 17:07:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787238474748","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":55,"product_id":55,"name":"Dermazine Plus 15g","sku":"PRD-00056","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":2,"subtotal":7000,"product":{"id":55,"name":"Dermazine Plus 15g","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00056","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-20 17:07:55] production.INFO: Stock deduction for product: Dermazine Plus 15g  
[2026-08-20 17:07:55] production.INFO: Old stock: 3.00  
[2026-08-20 17:07:55] production.INFO: Quantity deducted: 2  
[2026-08-20 17:07:55] production.INFO: New stock: 1  
[2026-08-20 17:07:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787238474748"} 
[2026-08-20 17:09:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787238584458","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Shaltux Box","sku":"PRD-00084","price":"300.00","selling_price":"300.00","purchase_price":"1500.00","quantity":10,"subtotal":3000,"product":{"id":82,"name":"Shaltux Box","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"300.00","current_stock":"240.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00084","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-08-20","last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-20T13:06:26.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-20 17:09:45] production.INFO: Stock deduction for product: Shaltux Box  
[2026-08-20 17:09:45] production.INFO: Old stock: 240.00  
[2026-08-20 17:09:45] production.INFO: Quantity deducted: 10  
[2026-08-20 17:09:45] production.INFO: New stock: 230  
[2026-08-20 17:09:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787238584458"} 
[2026-08-21 17:18:48] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787325526643","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":7,"product_id":7,"name":"Lofnac P Tab","sku":"PRD-00007","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":7,"name":"Lofnac P Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"16.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00007","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-12T14:54:37.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-21 17:18:48] production.INFO: Stock deduction for product: Lofnac P Tab  
[2026-08-21 17:18:48] production.INFO: Old stock: 16.00  
[2026-08-21 17:18:48] production.INFO: Quantity deducted: 1  
[2026-08-21 17:18:48] production.INFO: New stock: 15  
[2026-08-21 17:18:48] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787325526643"} 
[2026-08-22 17:30:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787412647237","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-15T17:06:34.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-22 17:30:47] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-22 17:30:47] production.INFO: Old stock: 95.00  
[2026-08-22 17:30:47] production.INFO: Quantity deducted: 2  
[2026-08-22 17:30:47] production.INFO: New stock: 93  
[2026-08-22 17:30:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787412647237"} 
[2026-08-22 17:31:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787412673782","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Albendazole 400mg Tabs (1s)","sku":"PRD-00069","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":68,"name":"Albendazole 400mg Tabs (1s)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00069","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-26T15:19:06.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-22 17:31:14] production.INFO: Stock deduction for product: Albendazole 400mg Tabs (1s)  
[2026-08-22 17:31:14] production.INFO: Old stock: 8.00  
[2026-08-22 17:31:14] production.INFO: Quantity deducted: 2  
[2026-08-22 17:31:14] production.INFO: New stock: 6  
[2026-08-22 17:31:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787412673782"} 
[2026-08-22 17:31:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787412684767","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-20T15:07:28.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-22 17:31:25] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-22 17:31:25] production.INFO: Old stock: 46.00  
[2026-08-22 17:31:25] production.INFO: Quantity deducted: 1  
[2026-08-22 17:31:25] production.INFO: New stock: 45  
[2026-08-22 17:31:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787412684767"} 
[2026-08-23 18:16:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787501776779","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":4,"subtotal":2000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"93.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-22T15:30:47.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-23 18:16:16] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-23 18:16:16] production.INFO: Old stock: 93.00  
[2026-08-23 18:16:16] production.INFO: Quantity deducted: 4  
[2026-08-23 18:16:16] production.INFO: New stock: 89  
[2026-08-23 18:16:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787501776779"} 
[2026-08-23 18:17:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787501822285","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"48.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-13T14:59:00.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-23 18:17:02] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-08-23 18:17:02] production.INFO: Old stock: 48.00  
[2026-08-23 18:17:02] production.INFO: Quantity deducted: 1  
[2026-08-23 18:17:02] production.INFO: New stock: 47  
[2026-08-23 18:17:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787501822285"} 
[2026-08-24 17:51:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787586692683","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"13.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-19T15:00:40.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-24 17:51:32] production.INFO: Stock deduction for product: Unosecure  
[2026-08-24 17:51:32] production.INFO: Old stock: 13.00  
[2026-08-24 17:51:32] production.INFO: Quantity deducted: 1  
[2026-08-24 17:51:32] production.INFO: New stock: 12  
[2026-08-24 17:51:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787586692683"} 
[2026-08-24 17:51:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787586709726","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":172,"product_id":172,"name":"Azithromycin 500 mg","sku":"PRD-00174","price":"5500.00","selling_price":"5500.00","purchase_price":"2750.00","quantity":1,"subtotal":5500,"product":{"id":172,"name":"Azithromycin 500 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2750.00","last_purchase_price":"2750.00","selling_price":"5500.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00174","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-24 17:51:49] production.INFO: Stock deduction for product: Azithromycin 500 mg  
[2026-08-24 17:51:49] production.INFO: Old stock: 3.00  
[2026-08-24 17:51:49] production.INFO: Quantity deducted: 1  
[2026-08-24 17:51:49] production.INFO: New stock: 2  
[2026-08-24 17:51:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787586709726"} 
[2026-08-24 17:52:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787586725815","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":211,"product_id":211,"name":"Ciprolab-500","sku":"PRD-00213","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":211,"name":"Ciprolab-500","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00213","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-24 17:52:06] production.INFO: Stock deduction for product: Ciprolab-500  
[2026-08-24 17:52:06] production.INFO: Old stock: 1.00  
[2026-08-24 17:52:06] production.INFO: Quantity deducted: 1  
[2026-08-24 17:52:06] production.INFO: New stock: 0  
[2026-08-24 17:52:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787586725815"} 
[2026-08-25 08:02:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787637733538","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-24T15:51:32.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-25 08:02:14] production.INFO: Stock deduction for product: Unosecure  
[2026-08-25 08:02:14] production.INFO: Old stock: 12.00  
[2026-08-25 08:02:14] production.INFO: Quantity deducted: 1  
[2026-08-25 08:02:14] production.INFO: New stock: 11  
[2026-08-25 08:02:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787637733538"} 
[2026-08-25 08:04:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787637893306","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"11.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-25T06:02:14.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-25 08:04:53] production.INFO: Stock deduction for product: Unosecure  
[2026-08-25 08:04:53] production.INFO: Old stock: 11.00  
[2026-08-25 08:04:53] production.INFO: Quantity deducted: 1  
[2026-08-25 08:04:53] production.INFO: New stock: 10  
[2026-08-25 08:04:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787637893306"} 
[2026-08-25 16:59:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787669955362","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Sinurrhon Tablet (120)","sku":"PRD-00004","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":2,"subtotal":4000,"product":{"id":4,"name":"Sinurrhon Tablet (120)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"98.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-19T15:01:12.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-25 16:59:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787669957735","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Sinurrhon Tablet (120)","sku":"PRD-00004","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":2,"subtotal":4000,"product":{"id":4,"name":"Sinurrhon Tablet (120)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"98.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-19T15:01:12.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-25 16:59:19] production.INFO: Stock deduction for product: Sinurrhon Tablet (120)  
[2026-08-25 16:59:19] production.INFO: Old stock: 98.00  
[2026-08-25 16:59:19] production.INFO: Quantity deducted: 2  
[2026-08-25 16:59:19] production.INFO: New stock: 96  
[2026-08-25 16:59:19] production.ERROR: Database error during finalize sale {"message":"SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: update `products` set `current_stock` = 96, `products`.`updated_at` = 2026-08-25 16:59:19 where `id` = 4)","sql":"update `products` set `current_stock` = ?, `products`.`updated_at` = ? where `id` = ?","bindings":[96.0,"2026-08-25 16:59:19",4],"trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(549): Illuminate\\Database\\Connection->affectingStatement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4167): Illuminate\\Database\\Connection->update()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1266): Illuminate\\Database\\Query\\Builder->update()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1316): Illuminate\\Database\\Eloquent\\Builder->update()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1233): Illuminate\\Database\\Eloquent\\Model->performUpdate()
#7 /home/findartmw/public_html/area25/app/Http/Controllers/POSController.php(745): Illuminate\\Database\\Eloquent\\Model->save()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\POSController->finalizeSale()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#14 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#60 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#61 {main}"} 
[2026-08-25 16:59:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787669957735"} 
[2026-08-25 16:59:43] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787669982553","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Shaltux Box","sku":"PRD-00084","price":"300.00","selling_price":"300.00","purchase_price":"1500.00","quantity":2,"subtotal":600,"product":{"id":82,"name":"Shaltux Box","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"300.00","current_stock":"230.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00084","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-08-20","last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-20T15:09:45.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-25 16:59:43] production.INFO: Stock deduction for product: Shaltux Box  
[2026-08-25 16:59:43] production.INFO: Old stock: 230.00  
[2026-08-25 16:59:43] production.INFO: Quantity deducted: 2  
[2026-08-25 16:59:43] production.INFO: New stock: 228  
[2026-08-25 16:59:43] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787669982553"} 
[2026-08-25 17:00:03] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787670003106","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":7,"subtotal":1400,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"239.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-17T16:55:25.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-25 17:00:03] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-25 17:00:03] production.INFO: Old stock: 239.00  
[2026-08-25 17:00:03] production.INFO: Quantity deducted: 7  
[2026-08-25 17:00:03] production.INFO: New stock: 232  
[2026-08-25 17:00:03] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787670003106"} 
[2026-08-25 17:00:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787670014537","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"Indomethacine 25 MG( Indocid)","sku":"PRD-00218","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":227,"name":"Indomethacine 25 MG( Indocid)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00218","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-29","created_at":"2026-07-29T08:01:40.000000Z","updated_at":"2026-08-04T15:07:53.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-08-25 17:00:15] production.INFO: Stock deduction for product: Indomethacine 25 MG( Indocid)  
[2026-08-25 17:00:15] production.INFO: Old stock: 2.00  
[2026-08-25 17:00:15] production.INFO: Quantity deducted: 1  
[2026-08-25 17:00:15] production.INFO: New stock: 1  
[2026-08-25 17:00:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787670014537"} 
[2026-08-26 17:00:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787756414479","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":136,"product_id":136,"name":"Amoxyl","sku":"PRD-00138","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":136,"name":"Amoxyl","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":1,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"1.00","stock":"3.00","product_type":"Single","tax":null,"sku":"PRD-00138","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-08-06","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-19T15:00:53.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":null}}],"payment_method":"cash"}} 
[2026-08-26 17:00:16] production.INFO: Stock deduction for product: Amoxyl  
[2026-08-26 17:00:16] production.INFO: Old stock: 1.00  
[2026-08-26 17:00:16] production.INFO: Quantity deducted: 1  
[2026-08-26 17:00:16] production.INFO: New stock: 0  
[2026-08-26 17:00:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787756414479"} 
[2026-08-26 17:00:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787756443029","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":181,"product_id":181,"name":"Rinacet","sku":"PRD-00183","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":5,"subtotal":5000,"product":{"id":181,"name":"Rinacet","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00183","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-26 17:00:44] production.INFO: Stock deduction for product: Rinacet  
[2026-08-26 17:00:44] production.INFO: Old stock: 10.00  
[2026-08-26 17:00:44] production.INFO: Quantity deducted: 5  
[2026-08-26 17:00:44] production.INFO: New stock: 5  
[2026-08-26 17:00:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787756443029"} 
[2026-08-26 17:12:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787757155539","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":208,"product_id":208,"name":"Doxyleb","sku":"PRD-00210","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":208,"name":"Doxyleb","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"8.00","stock":"10.00","product_type":"Single","tax":null,"sku":"PRD-00210","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-29","last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-04T15:06:13.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-26 17:12:36] production.INFO: Stock deduction for product: Doxyleb  
[2026-08-26 17:12:36] production.INFO: Old stock: 8.00  
[2026-08-26 17:12:36] production.INFO: Quantity deducted: 1  
[2026-08-26 17:12:36] production.INFO: New stock: 7  
[2026-08-26 17:12:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787757155539"} 
[2026-08-27 17:14:46] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787843686322","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":4,"subtotal":800,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"232.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-25T15:00:03.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-27 17:14:47] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-27 17:14:47] production.INFO: Old stock: 232.00  
[2026-08-27 17:14:47] production.INFO: Quantity deducted: 4  
[2026-08-27 17:14:47] production.INFO: New stock: 228  
[2026-08-27 17:14:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787843686322"} 
[2026-08-27 17:16:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787843783766","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":2,"subtotal":400,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"232.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-27T15:15:35.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-27 17:16:24] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-27 17:16:24] production.INFO: Old stock: 232.00  
[2026-08-27 17:16:24] production.INFO: Quantity deducted: 2  
[2026-08-27 17:16:24] production.INFO: New stock: 230  
[2026-08-27 17:16:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787843783766"} 
[2026-08-28 17:14:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787930092609","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":86,"product_id":86,"name":"Sprint 50ml","sku":"PRD-00088","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":86,"name":"Sprint 50ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00088","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-28 17:14:52] production.INFO: Stock deduction for product: Sprint 50ml  
[2026-08-28 17:14:52] production.INFO: Old stock: 5.00  
[2026-08-28 17:14:52] production.INFO: Quantity deducted: 1  
[2026-08-28 17:14:52] production.INFO: New stock: 4  
[2026-08-28 17:14:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787930092609"} 
[2026-08-28 17:15:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787930105423","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":105,"product_id":105,"name":"Aspirin 300mg (1000)","sku":"PRD-00107","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":105,"name":"Aspirin 300mg (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00107","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-14T15:22:35.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-28 17:15:05] production.INFO: Stock deduction for product: Aspirin 300mg (1000)  
[2026-08-28 17:15:05] production.INFO: Old stock: 54.00  
[2026-08-28 17:15:05] production.INFO: Quantity deducted: 1  
[2026-08-28 17:15:05] production.INFO: New stock: 53  
[2026-08-28 17:15:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787930105423"} 
[2026-08-28 17:15:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787930120944","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":2,"subtotal":8000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"12.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-25T06:10:54.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-28 17:15:20] production.INFO: Stock deduction for product: Unosecure  
[2026-08-28 17:15:20] production.INFO: Old stock: 12.00  
[2026-08-28 17:15:20] production.INFO: Quantity deducted: 2  
[2026-08-28 17:15:20] production.INFO: New stock: 10  
[2026-08-28 17:15:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787930120944"} 
[2026-08-28 17:15:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787930139619","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":124,"product_id":124,"name":"Ondansetron Syrup","sku":"PRD-00126","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":124,"name":"Ondansetron Syrup","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00126","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-28 17:15:39] production.INFO: Stock deduction for product: Ondansetron Syrup  
[2026-08-28 17:15:39] production.INFO: Old stock: 5.00  
[2026-08-28 17:15:39] production.INFO: Quantity deducted: 1  
[2026-08-28 17:15:39] production.INFO: New stock: 4  
[2026-08-28 17:15:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787930139619"} 
[2026-08-28 17:15:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1787930151202","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"47.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-23T16:17:02.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-28 17:15:51] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-08-28 17:15:51] production.INFO: Old stock: 47.00  
[2026-08-28 17:15:51] production.INFO: Quantity deducted: 1  
[2026-08-28 17:15:51] production.INFO: New stock: 46  
[2026-08-28 17:15:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1787930151202"} 
[2026-08-29 18:02:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788019365603","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":2,"product_id":2,"name":"Fricks Loz Menthol Box","sku":"PRD-00002","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":1,"subtotal":1500,"product":{"id":2,"name":"Fricks Loz Menthol Box","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"40.00","stock":"40.00","product_type":"Single","tax":null,"sku":"PRD-00002","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-07-21","last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-21T12:35:47.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-29 18:02:45] production.INFO: Stock deduction for product: Fricks Loz Menthol Box  
[2026-08-29 18:02:45] production.INFO: Old stock: 40.00  
[2026-08-29 18:02:45] production.INFO: Quantity deducted: 1  
[2026-08-29 18:02:45] production.INFO: New stock: 39  
[2026-08-29 18:02:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788019365603"} 
[2026-08-29 18:03:01] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788019381504","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"46.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-28T15:15:51.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-29 18:03:01] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-08-29 18:03:01] production.INFO: Old stock: 46.00  
[2026-08-29 18:03:01] production.INFO: Quantity deducted: 1  
[2026-08-29 18:03:01] production.INFO: New stock: 45  
[2026-08-29 18:03:01] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788019381504"} 
[2026-08-29 18:03:31] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788019411326","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":4,"subtotal":2000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"89.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-23T16:16:16.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-29 18:03:31] production.INFO: Stock deduction for product: Zangra-100  
[2026-08-29 18:03:31] production.INFO: Old stock: 89.00  
[2026-08-29 18:03:31] production.INFO: Quantity deducted: 4  
[2026-08-29 18:03:31] production.INFO: New stock: 85  
[2026-08-29 18:03:31] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788019411326"} 
[2026-08-30 17:12:27] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788102746694","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":177,"product_id":177,"name":"Comit-100 Tablets","sku":"PRD-00179","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":2,"subtotal":8000,"product":{"id":177,"name":"Comit-100 Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00179","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-25T14:34:55.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-30 17:12:27] production.INFO: Stock deduction for product: Comit-100 Tablets  
[2026-08-30 17:12:27] production.INFO: Old stock: 4.00  
[2026-08-30 17:12:27] production.INFO: Quantity deducted: 2  
[2026-08-30 17:12:27] production.INFO: New stock: 2  
[2026-08-30 17:12:27] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788102746694"} 
[2026-08-30 17:12:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788102758486","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":46,"product_id":46,"name":"Beclomin Cream Big","sku":"PRD-00046","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":46,"name":"Beclomin Cream Big","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00046","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-07T15:10:19.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-30 17:12:39] production.INFO: Stock deduction for product: Beclomin Cream Big  
[2026-08-30 17:12:39] production.INFO: Old stock: 4.00  
[2026-08-30 17:12:39] production.INFO: Quantity deducted: 1  
[2026-08-30 17:12:39] production.INFO: New stock: 3  
[2026-08-30 17:12:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788102758486"} 
[2026-08-31 17:17:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788189476906","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":2,"subtotal":400,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"230.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-27T15:16:24.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-31 17:17:57] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-08-31 17:17:57] production.INFO: Old stock: 230.00  
[2026-08-31 17:17:57] production.INFO: Quantity deducted: 2  
[2026-08-31 17:17:57] production.INFO: New stock: 228  
[2026-08-31 17:17:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788189476906"} 
[2026-08-31 17:18:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788189503405","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-22T15:31:25.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-08-31 17:18:24] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-08-31 17:18:24] production.INFO: Old stock: 45.00  
[2026-08-31 17:18:24] production.INFO: Quantity deducted: 1  
[2026-08-31 17:18:24] production.INFO: New stock: 44  
[2026-08-31 17:18:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788189503405"} 
[2026-09-01 17:04:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788275089933","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"45.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-29T16:03:01.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-01 17:04:50] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-09-01 17:04:50] production.INFO: Old stock: 45.00  
[2026-09-01 17:04:50] production.INFO: Quantity deducted: 2  
[2026-09-01 17:04:50] production.INFO: New stock: 43  
[2026-09-01 17:04:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788275089933"} 
[2026-09-01 17:05:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788275109643","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"44.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-31T15:18:24.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-01 17:05:10] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-09-01 17:05:10] production.INFO: Old stock: 44.00  
[2026-09-01 17:05:10] production.INFO: Quantity deducted: 2  
[2026-09-01 17:05:10] production.INFO: New stock: 42  
[2026-09-01 17:05:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788275109643"} 
[2026-09-02 17:05:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788361529654","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Metrol 200 mg","sku":"PRD-00139","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":137,"name":"Metrol 200 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00139","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-02 17:05:35] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788361533467","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Metrol 200 mg","sku":"PRD-00139","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":137,"name":"Metrol 200 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00139","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-02 17:05:35] production.INFO: Stock deduction for product: Metrol 200 mg  
[2026-09-02 17:05:35] production.INFO: Old stock: 3.00  
[2026-09-02 17:05:35] production.INFO: Quantity deducted: 1  
[2026-09-02 17:05:35] production.INFO: New stock: 2  
[2026-09-02 17:05:35] production.ERROR: Database error during finalize sale {"message":"SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction (Connection: mysql, Host: localhost, Port: 3306, Database: findartmw_area25, SQL: update `products` set `current_stock` = 2, `products`.`updated_at` = 2026-09-02 17:05:35 where `id` = 137)","sql":"update `products` set `current_stock` = ?, `products`.`updated_at` = ? where `id` = ?","bindings":[2.0,"2026-09-02 17:05:35",137],"trace":"#0 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback()
#1 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate\\Database\\Connection->run()
#2 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(549): Illuminate\\Database\\Connection->affectingStatement()
#3 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4167): Illuminate\\Database\\Connection->update()
#4 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1266): Illuminate\\Database\\Query\\Builder->update()
#5 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1316): Illuminate\\Database\\Eloquent\\Builder->update()
#6 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1233): Illuminate\\Database\\Eloquent\\Model->performUpdate()
#7 /home/findartmw/public_html/area25/app/Http/Controllers/POSController.php(745): Illuminate\\Database\\Eloquent\\Model->save()
#8 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\\Http\\Controllers\\POSController->finalizeSale()
#9 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction()
#10 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#11 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate\\Routing\\Route->runController()
#12 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#13 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#14 /home/findartmw/public_html/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#15 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle()
#16 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#17 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#18 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle()
#20 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#22 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#24 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest()
#26 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle()
#27 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#28 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#29 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#30 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#31 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then()
#33 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack()
#34 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute()
#35 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute()
#36 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch()
#37 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#38 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#39 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#40 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle()
#41 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#43 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle()
#44 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#45 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle()
#46 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#47 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle()
#48 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#49 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle()
#50 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#51 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle()
#52 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#53 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle()
#54 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#55 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle()
#56 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#57 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then()
#58 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#59 /home/findartmw/public_html/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle()
#60 /home/findartmw/public_html/area25/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest()
#61 {main}"} 
[2026-09-02 17:05:35] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788361529654"} 
[2026-09-02 17:07:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788361627686","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":227,"product_id":227,"name":"Indomethacine 25 MG( Indocid)","sku":"PRD-00218","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":227,"name":"Indomethacine 25 MG( Indocid)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00218","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-07-29","created_at":"2026-07-29T08:01:40.000000Z","updated_at":"2026-08-25T15:00:15.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-09-02 17:07:10] production.INFO: Stock deduction for product: Indomethacine 25 MG( Indocid)  
[2026-09-02 17:07:10] production.INFO: Old stock: 1.00  
[2026-09-02 17:07:10] production.INFO: Quantity deducted: 1  
[2026-09-02 17:07:10] production.INFO: New stock: 0  
[2026-09-02 17:07:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788361627686"} 
[2026-09-02 17:07:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788361672633","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-28T15:15:20.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-02 17:07:53] production.INFO: Stock deduction for product: Unosecure  
[2026-09-02 17:07:53] production.INFO: Old stock: 10.00  
[2026-09-02 17:07:53] production.INFO: Quantity deducted: 1  
[2026-09-02 17:07:53] production.INFO: New stock: 9  
[2026-09-02 17:07:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788361672633"} 
[2026-09-02 17:10:38] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788361837660","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":106,"product_id":106,"name":"Junior Aspirin 75mg (1000)","sku":"PRD-00108","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":106,"name":"Junior Aspirin 75mg (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"32.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00108","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-15T15:05:43.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-02 17:10:38] production.INFO: Stock deduction for product: Junior Aspirin 75mg (1000)  
[2026-09-02 17:10:38] production.INFO: Old stock: 32.00  
[2026-09-02 17:10:38] production.INFO: Quantity deducted: 1  
[2026-09-02 17:10:38] production.INFO: New stock: 31  
[2026-09-02 17:10:38] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788361837660"} 
[2026-09-03 17:02:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788447736720","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":67,"product_id":67,"name":"Whitfield Ointment 15gm","sku":"PRD-00068","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":67,"name":"Whitfield Ointment 15gm","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00068","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-03 17:02:17] production.INFO: Stock deduction for product: Whitfield Ointment 15gm  
[2026-09-03 17:02:17] production.INFO: Old stock: 5.00  
[2026-09-03 17:02:17] production.INFO: Quantity deducted: 1  
[2026-09-03 17:02:17] production.INFO: New stock: 4  
[2026-09-03 17:02:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788447736720"} 
[2026-09-03 17:02:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788447753753","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":100,"product_id":100,"name":"Rufenac Gel","sku":"PRD-00102","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":100,"name":"Rufenac Gel","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00102","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-03 17:02:34] production.INFO: Stock deduction for product: Rufenac Gel  
[2026-09-03 17:02:34] production.INFO: Old stock: 5.00  
[2026-09-03 17:02:34] production.INFO: Quantity deducted: 1  
[2026-09-03 17:02:34] production.INFO: New stock: 4  
[2026-09-03 17:02:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788447753753"} 
[2026-09-05 16:35:13] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788618912175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":10,"subtotal":2000,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"228.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-31T15:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-05 16:35:14] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-09-05 16:35:14] production.INFO: Old stock: 228.00  
[2026-09-05 16:35:14] production.INFO: Quantity deducted: 10  
[2026-09-05 16:35:14] production.INFO: New stock: 218  
[2026-09-05 16:35:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788618912175"} 
[2026-09-05 16:35:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788618913939","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Fricks Loz Lemon Jar","sku":"PRD-00003","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":10,"subtotal":2000,"product":{"id":3,"name":"Fricks Loz Lemon Jar","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"228.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-31T15:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-05 16:35:14] production.INFO: Stock deduction for product: Fricks Loz Lemon Jar  
[2026-09-05 16:35:14] production.INFO: Old stock: 218.00  
[2026-09-05 16:35:14] production.INFO: Quantity deducted: 10  
[2026-09-05 16:35:14] production.INFO: New stock: 208  
[2026-09-05 16:35:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788618913939"} 
[2026-09-05 16:35:33] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788618932769","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":196,"product_id":196,"name":"Dazel Kit","sku":"PRD-00198","price":"30000.00","selling_price":"30000.00","purchase_price":"15000.00","quantity":1,"subtotal":30000,"product":{"id":196,"name":"Dazel Kit","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"15000.00","last_purchase_price":"15000.00","selling_price":"30000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00198","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-05 16:35:33] production.INFO: Stock deduction for product: Dazel Kit  
[2026-09-05 16:35:33] production.INFO: Old stock: 3.00  
[2026-09-05 16:35:33] production.INFO: Quantity deducted: 1  
[2026-09-05 16:35:33] production.INFO: New stock: 2  
[2026-09-05 16:35:33] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788618932769"} 
[2026-09-06 17:03:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788707024568","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":91,"product_id":91,"name":"Manyuchi Classic","sku":"PRD-00093","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":3,"subtotal":3000,"product":{"id":91,"name":"Manyuchi Classic","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"43.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00093","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-01T15:04:50.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-06 17:03:44] production.INFO: Stock deduction for product: Manyuchi Classic  
[2026-09-06 17:03:44] production.INFO: Old stock: 43.00  
[2026-09-06 17:03:44] production.INFO: Quantity deducted: 3  
[2026-09-06 17:03:44] production.INFO: New stock: 40  
[2026-09-06 17:03:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788707024568"} 
[2026-09-06 17:04:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788707044807","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":126,"product_id":126,"name":"Manyuchi Premium","sku":"PRD-00128","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":126,"name":"Manyuchi Premium","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00128","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-10T14:57:49.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-06 17:04:04] production.INFO: Stock deduction for product: Manyuchi Premium  
[2026-09-06 17:04:04] production.INFO: Old stock: 8.00  
[2026-09-06 17:04:04] production.INFO: Quantity deducted: 2  
[2026-09-06 17:04:04] production.INFO: New stock: 6  
[2026-09-06 17:04:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788707044807"} 
[2026-09-06 17:04:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788707055034","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":95,"product_id":95,"name":"Coldrid","sku":"PRD-00097","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":95,"name":"Coldrid","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00097","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-07T15:08:32.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-06 17:04:14] production.INFO: Stock deduction for product: Coldrid  
[2026-09-06 17:04:14] production.INFO: Old stock: 8.00  
[2026-09-06 17:04:14] production.INFO: Quantity deducted: 1  
[2026-09-06 17:04:14] production.INFO: New stock: 7  
[2026-09-06 17:04:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788707055034"} 
[2026-09-06 17:05:00] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788707100208","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Metrol 200 mg","sku":"PRD-00139","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":137,"name":"Metrol 200 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00139","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-02T15:05:35.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-06 17:05:00] production.INFO: Stock deduction for product: Metrol 200 mg  
[2026-09-06 17:05:00] production.INFO: Old stock: 2.00  
[2026-09-06 17:05:00] production.INFO: Quantity deducted: 1  
[2026-09-06 17:05:00] production.INFO: New stock: 1  
[2026-09-06 17:05:00] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788707100208"} 
[2026-09-07 17:00:21] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788793220940","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":114,"product_id":114,"name":"Zinia-F","sku":"PRD-00116","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":114,"name":"Zinia-F","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00116","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-07 17:00:21] production.INFO: Stock deduction for product: Zinia-F  
[2026-09-07 17:00:21] production.INFO: Old stock: 9.00  
[2026-09-07 17:00:21] production.INFO: Quantity deducted: 1  
[2026-09-07 17:00:21] production.INFO: New stock: 8  
[2026-09-07 17:00:21] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788793220940"} 
[2026-09-07 17:00:41] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788793241432","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":11,"subtotal":5500,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"85.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-29T16:03:31.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-07 17:00:41] production.INFO: Stock deduction for product: Zangra-100  
[2026-09-07 17:00:41] production.INFO: Old stock: 85.00  
[2026-09-07 17:00:41] production.INFO: Quantity deducted: 11  
[2026-09-07 17:00:41] production.INFO: New stock: 74  
[2026-09-07 17:00:41] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788793241432"} 
[2026-09-07 17:05:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788793525552","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":120,"product_id":120,"name":"Aspirin red","sku":"PRD-00122","price":"150.00","selling_price":"150.00","purchase_price":"75.00","quantity":1,"subtotal":150,"product":{"id":120,"name":"Aspirin red","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"75.00","last_purchase_price":"75.00","selling_price":"150.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00122","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-07 17:05:25] production.INFO: Stock deduction for product: Aspirin red  
[2026-09-07 17:05:25] production.INFO: Old stock: 50.00  
[2026-09-07 17:05:25] production.INFO: Quantity deducted: 1  
[2026-09-07 17:05:25] production.INFO: New stock: 49  
[2026-09-07 17:05:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788793525552"} 
[2026-09-08 16:54:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788879295346","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":82,"product_id":82,"name":"Shaltux Box","sku":"PRD-00084","price":"300.00","selling_price":"300.00","purchase_price":"1500.00","quantity":5,"subtotal":1500,"product":{"id":82,"name":"Shaltux Box","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"300.00","current_stock":"228.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00084","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-08-20","last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-25T14:59:43.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-08 16:54:55] production.INFO: Stock deduction for product: Shaltux Box  
[2026-09-08 16:54:55] production.INFO: Old stock: 228.00  
[2026-09-08 16:54:55] production.INFO: Quantity deducted: 5  
[2026-09-08 16:54:55] production.INFO: New stock: 223  
[2026-09-08 16:54:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788879295346"} 
[2026-09-08 16:55:11] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788879311559","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-02T15:07:53.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-08 16:55:11] production.INFO: Stock deduction for product: Unosecure  
[2026-09-08 16:55:11] production.INFO: Old stock: 9.00  
[2026-09-08 16:55:11] production.INFO: Quantity deducted: 1  
[2026-09-08 16:55:11] production.INFO: New stock: 8  
[2026-09-08 16:55:11] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788879311559"} 
[2026-09-08 16:56:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788879370632","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":93,"product_id":93,"name":"One -step Pregnacy Test Strip (1000)","sku":"PRD-00095","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":93,"name":"One -step Pregnacy Test Strip (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"19.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00095","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-29T08:39:44.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-08 16:56:10] production.INFO: Stock deduction for product: One -step Pregnacy Test Strip (1000)  
[2026-09-08 16:56:10] production.INFO: Old stock: 19.00  
[2026-09-08 16:56:10] production.INFO: Quantity deducted: 1  
[2026-09-08 16:56:10] production.INFO: New stock: 18  
[2026-09-08 16:56:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788879370632"} 
[2026-09-09 16:59:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788965947470","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":230,"product_id":230,"name":"Fenamex","sku":"PRD-00221","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":230,"name":"Fenamex","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00221","image":null,"description":null,"alert_quantity":"1.00","expiry_date":null,"last_purchase_date":"2026-08-06","created_at":"2026-08-06T11:40:24.000000Z","updated_at":"2026-08-06T11:40:24.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z"}}}],"payment_method":"cash"}} 
[2026-09-09 16:59:07] production.INFO: Stock deduction for product: Fenamex  
[2026-09-09 16:59:07] production.INFO: Old stock: 2.00  
[2026-09-09 16:59:07] production.INFO: Quantity deducted: 1  
[2026-09-09 16:59:07] production.INFO: New stock: 1  
[2026-09-09 16:59:07] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788965947470"} 
[2026-09-09 16:59:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1788965958643","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"42.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-01T15:05:10.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-09 16:59:18] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-09-09 16:59:18] production.INFO: Old stock: 42.00  
[2026-09-09 16:59:18] production.INFO: Quantity deducted: 1  
[2026-09-09 16:59:18] production.INFO: New stock: 41  
[2026-09-09 16:59:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1788965958643"} 
[2026-09-10 16:52:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789051960385","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":203,"product_id":203,"name":"Celza 500","sku":"PRD-00205","price":"19000.00","selling_price":"19000.00","purchase_price":"9500.00","quantity":1,"subtotal":19000,"product":{"id":203,"name":"Celza 500","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"9500.00","last_purchase_price":"9500.00","selling_price":"19000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00205","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-10 16:52:39] production.INFO: Stock deduction for product: Celza 500  
[2026-09-10 16:52:39] production.INFO: Old stock: 1.00  
[2026-09-10 16:52:39] production.INFO: Quantity deducted: 1  
[2026-09-10 16:52:39] production.INFO: New stock: 0  
[2026-09-10 16:52:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789051960385"} 
[2026-09-10 16:52:59] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789051980460","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":123,"product_id":123,"name":"Water Plaster","sku":"PRD-00125","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":15,"subtotal":3000,"product":{"id":123,"name":"Water Plaster","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"99.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00125","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-07T15:10:07.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-10 16:52:59] production.INFO: Stock deduction for product: Water Plaster  
[2026-09-10 16:52:59] production.INFO: Old stock: 99.00  
[2026-09-10 16:52:59] production.INFO: Quantity deducted: 15  
[2026-09-10 16:52:59] production.INFO: New stock: 84  
[2026-09-10 16:52:59] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789051980460"} 
[2026-09-10 16:53:16] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789051996804","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":126,"product_id":126,"name":"Manyuchi Premium","sku":"PRD-00128","price":"1500.00","selling_price":"1500.00","purchase_price":"750.00","quantity":2,"subtotal":3000,"product":{"id":126,"name":"Manyuchi Premium","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"750.00","last_purchase_price":"750.00","selling_price":"1500.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00128","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-06T15:04:04.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-10 16:53:16] production.INFO: Stock deduction for product: Manyuchi Premium  
[2026-09-10 16:53:16] production.INFO: Old stock: 6.00  
[2026-09-10 16:53:16] production.INFO: Quantity deducted: 2  
[2026-09-10 16:53:16] production.INFO: New stock: 4  
[2026-09-10 16:53:16] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789051996804"} 
[2026-09-10 16:53:32] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789052013226","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Albendazole 400mg Tabs (1s)","sku":"PRD-00069","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":68,"name":"Albendazole 400mg Tabs (1s)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00069","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-22T15:31:14.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-10 16:53:32] production.INFO: Stock deduction for product: Albendazole 400mg Tabs (1s)  
[2026-09-10 16:53:32] production.INFO: Old stock: 6.00  
[2026-09-10 16:53:32] production.INFO: Quantity deducted: 2  
[2026-09-10 16:53:32] production.INFO: New stock: 4  
[2026-09-10 16:53:32] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789052013226"} 
[2026-09-10 16:53:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789052025725","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":204,"product_id":204,"name":"Voltjem","sku":"PRD-00206","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":204,"name":"Voltjem","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"9.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00206","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-18T15:05:18.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-10 16:53:45] production.INFO: Stock deduction for product: Voltjem  
[2026-09-10 16:53:45] production.INFO: Old stock: 9.00  
[2026-09-10 16:53:45] production.INFO: Quantity deducted: 1  
[2026-09-10 16:53:45] production.INFO: New stock: 8  
[2026-09-10 16:53:45] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789052025725"} 
[2026-09-11 17:01:25] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789138885510","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":137,"product_id":137,"name":"Metrol 200 mg","sku":"PRD-00139","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":137,"name":"Metrol 200 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00139","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-06T15:05:00.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-11 17:01:25] production.INFO: Stock deduction for product: Metrol 200 mg  
[2026-09-11 17:01:25] production.INFO: Old stock: 1.00  
[2026-09-11 17:01:25] production.INFO: Quantity deducted: 1  
[2026-09-11 17:01:25] production.INFO: New stock: 0  
[2026-09-11 17:01:25] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789138885510"} 
[2026-09-11 17:01:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789138898062","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":119,"product_id":119,"name":"Junir Zinc","sku":"PRD-00121","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":119,"name":"Junir Zinc","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00121","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-11 17:01:37] production.INFO: Stock deduction for product: Junir Zinc  
[2026-09-11 17:01:37] production.INFO: Old stock: 10.00  
[2026-09-11 17:01:37] production.INFO: Quantity deducted: 1  
[2026-09-11 17:01:37] production.INFO: New stock: 9  
[2026-09-11 17:01:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789138898062"} 
[2026-09-11 17:01:47] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789138908675","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":103,"product_id":103,"name":"Paracetamol 1000","sku":"PRD-00105","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":103,"name":"Paracetamol 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"41.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00105","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-09T14:59:18.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-11 17:01:47] production.INFO: Stock deduction for product: Paracetamol 1000  
[2026-09-11 17:01:47] production.INFO: Old stock: 41.00  
[2026-09-11 17:01:47] production.INFO: Quantity deducted: 1  
[2026-09-11 17:01:47] production.INFO: New stock: 40  
[2026-09-11 17:01:47] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789138908675"} 
[2026-09-12 16:59:18] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789225158684","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":140,"product_id":140,"name":"Prednisolone 5 mg","sku":"PRD-00142","price":"2500.00","selling_price":"2500.00","purchase_price":"1250.00","quantity":1,"subtotal":2500,"product":{"id":140,"name":"Prednisolone 5 mg","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1250.00","last_purchase_price":"1250.00","selling_price":"2500.00","current_stock":"1.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00142","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-20T15:07:02.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-12 16:59:18] production.INFO: Stock deduction for product: Prednisolone 5 mg  
[2026-09-12 16:59:18] production.INFO: Old stock: 1.00  
[2026-09-12 16:59:18] production.INFO: Quantity deducted: 1  
[2026-09-12 16:59:18] production.INFO: New stock: 0  
[2026-09-12 16:59:18] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789225158684"} 
[2026-09-12 16:59:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789225180278","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Albendazole 400mg Tabs (1s)","sku":"PRD-00069","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":68,"name":"Albendazole 400mg Tabs (1s)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00069","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-10T14:53:32.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-12 16:59:39] production.INFO: Stock deduction for product: Albendazole 400mg Tabs (1s)  
[2026-09-12 16:59:39] production.INFO: Old stock: 4.00  
[2026-09-12 16:59:39] production.INFO: Quantity deducted: 2  
[2026-09-12 16:59:39] production.INFO: New stock: 2  
[2026-09-12 16:59:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789225180278"} 
[2026-09-12 16:59:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789225193087","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":50,"product_id":50,"name":"Magnesium Tabs 1000","sku":"PRD-00050","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":50,"name":"Magnesium Tabs 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"54.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00050","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-07T15:09:45.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-12 16:59:52] production.INFO: Stock deduction for product: Magnesium Tabs 1000  
[2026-09-12 16:59:52] production.INFO: Old stock: 54.00  
[2026-09-12 16:59:52] production.INFO: Quantity deducted: 1  
[2026-09-12 16:59:52] production.INFO: New stock: 53  
[2026-09-12 16:59:52] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789225193087"} 
[2026-09-12 17:00:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789225202816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"Ibuprofen 1000","sku":"PRD-00106","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":104,"name":"Ibuprofen 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"51.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00106","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-18T14:58:28.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-12 17:00:02] production.INFO: Stock deduction for product: Ibuprofen 1000  
[2026-09-12 17:00:02] production.INFO: Old stock: 51.00  
[2026-09-12 17:00:02] production.INFO: Quantity deducted: 1  
[2026-09-12 17:00:02] production.INFO: New stock: 50  
[2026-09-12 17:00:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789225202816"} 
[2026-09-12 17:00:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789225218013","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":98,"product_id":98,"name":"Examination Gloves","sku":"PRD-00100","price":"800.00","selling_price":"800.00","purchase_price":"400.00","quantity":1,"subtotal":800,"product":{"id":98,"name":"Examination Gloves","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"400.00","last_purchase_price":"400.00","selling_price":"800.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00100","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-12 17:00:17] production.INFO: Stock deduction for product: Examination Gloves  
[2026-09-12 17:00:17] production.INFO: Old stock: 50.00  
[2026-09-12 17:00:17] production.INFO: Quantity deducted: 1  
[2026-09-12 17:00:17] production.INFO: New stock: 49  
[2026-09-12 17:00:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789225218013"} 
[2026-09-13 17:08:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789312131192","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"8.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-08T14:55:11.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-13 17:08:50] production.INFO: Stock deduction for product: Unosecure  
[2026-09-13 17:08:50] production.INFO: Old stock: 8.00  
[2026-09-13 17:08:50] production.INFO: Quantity deducted: 1  
[2026-09-13 17:08:50] production.INFO: New stock: 7  
[2026-09-13 17:08:50] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789312131192"} 
[2026-09-13 17:09:14] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789312154805","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":97,"product_id":97,"name":"HIV Test Kit","sku":"PRD-00099","price":"10000.00","selling_price":"10000.00","purchase_price":"5000.00","quantity":1,"subtotal":10000,"product":{"id":97,"name":"HIV Test Kit","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"5000.00","last_purchase_price":"5000.00","selling_price":"10000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00099","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-13 17:09:14] production.INFO: Stock deduction for product: HIV Test Kit  
[2026-09-13 17:09:14] production.INFO: Old stock: 10.00  
[2026-09-13 17:09:14] production.INFO: Quantity deducted: 1  
[2026-09-13 17:09:14] production.INFO: New stock: 9  
[2026-09-13 17:09:14] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789312154805"} 
[2026-09-14 17:04:39] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789398278500","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"7.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-13T15:08:50.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-14 17:04:39] production.INFO: Stock deduction for product: Unosecure  
[2026-09-14 17:04:39] production.INFO: Old stock: 7.00  
[2026-09-14 17:04:39] production.INFO: Quantity deducted: 1  
[2026-09-14 17:04:39] production.INFO: New stock: 6  
[2026-09-14 17:04:39] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789398278500"} 
[2026-09-14 17:04:57] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789398296150","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":106,"product_id":106,"name":"Junior Aspirin 75mg (1000)","sku":"PRD-00108","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":106,"name":"Junior Aspirin 75mg (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"31.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00108","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-02T15:10:38.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-14 17:04:57] production.INFO: Stock deduction for product: Junior Aspirin 75mg (1000)  
[2026-09-14 17:04:57] production.INFO: Old stock: 31.00  
[2026-09-14 17:04:57] production.INFO: Quantity deducted: 1  
[2026-09-14 17:04:57] production.INFO: New stock: 30  
[2026-09-14 17:04:57] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789398296150"} 
[2026-09-14 17:05:19] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789398318025","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":104,"product_id":104,"name":"Ibuprofen 1000","sku":"PRD-00106","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":104,"name":"Ibuprofen 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"50.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00106","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-12T15:00:02.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-14 17:05:19] production.INFO: Stock deduction for product: Ibuprofen 1000  
[2026-09-14 17:05:19] production.INFO: Old stock: 50.00  
[2026-09-14 17:05:19] production.INFO: Quantity deducted: 1  
[2026-09-14 17:05:19] production.INFO: New stock: 49  
[2026-09-14 17:05:19] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789398318025"} 
[2026-09-15 16:57:24] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789484242767","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":106,"product_id":106,"name":"Junior Aspirin 75mg (1000)","sku":"PRD-00108","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":106,"name":"Junior Aspirin 75mg (1000)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"30.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00108","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-14T15:04:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-15 16:57:24] production.INFO: Stock deduction for product: Junior Aspirin 75mg (1000)  
[2026-09-15 16:57:24] production.INFO: Old stock: 30.00  
[2026-09-15 16:57:24] production.INFO: Quantity deducted: 1  
[2026-09-15 16:57:24] production.INFO: New stock: 29  
[2026-09-15 16:57:24] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789484242767"} 
[2026-09-15 16:57:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789484262854","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"74.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-07T15:00:41.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-15 16:57:44] production.INFO: Stock deduction for product: Zangra-100  
[2026-09-15 16:57:44] production.INFO: Old stock: 74.00  
[2026-09-15 16:57:44] production.INFO: Quantity deducted: 2  
[2026-09-15 16:57:44] production.INFO: New stock: 72  
[2026-09-15 16:57:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789484262854"} 
[2026-09-16 17:06:42] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789571200731","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"G Derm Cream (Big)","sku":"PRD-00047","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":2,"subtotal":12000,"product":{"id":47,"name":"G Derm Cream (Big)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00047","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-16 17:06:42] production.INFO: Stock deduction for product: G Derm Cream (Big)  
[2026-09-16 17:06:42] production.INFO: Old stock: 5.00  
[2026-09-16 17:06:42] production.INFO: Quantity deducted: 2  
[2026-09-16 17:06:42] production.INFO: New stock: 3  
[2026-09-16 17:06:42] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789571200731"} 
[2026-09-16 17:06:54] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789571213179","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":13,"product_id":13,"name":"Pharmadol S Tab","sku":"PRD-00013","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":13,"name":"Pharmadol S Tab","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00013","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-16 17:06:54] production.INFO: Stock deduction for product: Pharmadol S Tab  
[2026-09-16 17:06:54] production.INFO: Old stock: 10.00  
[2026-09-16 17:06:54] production.INFO: Quantity deducted: 1  
[2026-09-16 17:06:54] production.INFO: New stock: 9  
[2026-09-16 17:06:54] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789571213179"} 
[2026-09-16 17:07:09] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789571227886","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":92,"product_id":92,"name":"Pregstream","sku":"PRD-00094","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":92,"name":"Pregstream","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00094","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-16 17:07:09] production.INFO: Stock deduction for product: Pregstream  
[2026-09-16 17:07:09] production.INFO: Old stock: 10.00  
[2026-09-16 17:07:09] production.INFO: Quantity deducted: 1  
[2026-09-16 17:07:09] production.INFO: New stock: 9  
[2026-09-16 17:07:09] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789571227886"} 
[2026-09-17 17:03:34] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657413372","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":1,"subtotal":300,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"37.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-08-20T15:06:45.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:03:34] production.INFO: Stock deduction for product: Face Mask  
[2026-09-17 17:03:34] production.INFO: Old stock: 37.00  
[2026-09-17 17:03:34] production.INFO: Quantity deducted: 1  
[2026-09-17 17:03:34] production.INFO: New stock: 36  
[2026-09-17 17:03:34] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657413372"} 
[2026-09-17 17:03:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657423202","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":50,"product_id":50,"name":"Magnesium Tabs 1000","sku":"PRD-00050","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":1,"subtotal":1000,"product":{"id":50,"name":"Magnesium Tabs 1000","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"53.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00050","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-12T14:59:52.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:03:44] production.INFO: Stock deduction for product: Magnesium Tabs 1000  
[2026-09-17 17:03:44] production.INFO: Old stock: 53.00  
[2026-09-17 17:03:44] production.INFO: Quantity deducted: 1  
[2026-09-17 17:03:44] production.INFO: New stock: 52  
[2026-09-17 17:03:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657423202"} 
[2026-09-17 17:04:53] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657490213","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":59,"product_id":59,"name":"Dawacort Cream 15g","sku":"PRD-00060","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":59,"name":"Dawacort Cream 15g","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00060","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:04:53] production.INFO: Stock deduction for product: Dawacort Cream 15g  
[2026-09-17 17:04:53] production.INFO: Old stock: 5.00  
[2026-09-17 17:04:53] production.INFO: Quantity deducted: 1  
[2026-09-17 17:04:53] production.INFO: New stock: 4  
[2026-09-17 17:04:53] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657490213"} 
[2026-09-17 17:05:02] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657501531","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":47,"product_id":47,"name":"G Derm Cream (Big)","sku":"PRD-00047","price":"6000.00","selling_price":"6000.00","purchase_price":"3000.00","quantity":1,"subtotal":6000,"product":{"id":47,"name":"G Derm Cream (Big)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"6000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00047","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-16T15:06:42.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:05:02] production.INFO: Stock deduction for product: G Derm Cream (Big)  
[2026-09-17 17:05:02] production.INFO: Old stock: 3.00  
[2026-09-17 17:05:02] production.INFO: Quantity deducted: 1  
[2026-09-17 17:05:02] production.INFO: New stock: 2  
[2026-09-17 17:05:02] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657501531"} 
[2026-09-17 17:05:15] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657514434","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Sinurrhon Tablet (120)","sku":"PRD-00004","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":4,"name":"Sinurrhon Tablet (120)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"96.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-08-25T14:59:19.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:05:15] production.INFO: Stock deduction for product: Sinurrhon Tablet (120)  
[2026-09-17 17:05:15] production.INFO: Old stock: 96.00  
[2026-09-17 17:05:15] production.INFO: Quantity deducted: 1  
[2026-09-17 17:05:15] production.INFO: New stock: 95  
[2026-09-17 17:05:15] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657514434"} 
[2026-09-17 17:05:26] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657524638","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"72.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-15T14:57:44.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:05:26] production.INFO: Stock deduction for product: Zangra-100  
[2026-09-17 17:05:26] production.INFO: Old stock: 72.00  
[2026-09-17 17:05:26] production.INFO: Quantity deducted: 2  
[2026-09-17 17:05:26] production.INFO: New stock: 70  
[2026-09-17 17:05:26] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657524638"} 
[2026-09-17 17:09:06] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789657743464","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":185,"product_id":185,"name":"Demona","sku":"PRD-00187","price":"3000.00","selling_price":"3000.00","purchase_price":"1500.00","quantity":1,"subtotal":3000,"product":{"id":185,"name":"Demona","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"3000.00","current_stock":"3.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00187","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-17 17:09:06] production.INFO: Stock deduction for product: Demona  
[2026-09-17 17:09:06] production.INFO: Old stock: 3.00  
[2026-09-17 17:09:06] production.INFO: Quantity deducted: 1  
[2026-09-17 17:09:06] production.INFO: New stock: 2  
[2026-09-17 17:09:06] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789657743464"} 
[2026-09-18 17:02:04] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789743722591","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":76,"product_id":76,"name":"Epiderm Lotion","sku":"PRD-00078","price":"5000.00","selling_price":"5000.00","purchase_price":"2500.00","quantity":1,"subtotal":5000,"product":{"id":76,"name":"Epiderm Lotion","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2500.00","last_purchase_price":"2500.00","selling_price":"5000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00078","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-07-19T21:17:57.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-18 17:02:04] production.INFO: Stock deduction for product: Epiderm Lotion  
[2026-09-18 17:02:04] production.INFO: Old stock: 5.00  
[2026-09-18 17:02:04] production.INFO: Quantity deducted: 1  
[2026-09-18 17:02:04] production.INFO: New stock: 4  
[2026-09-18 17:02:04] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789743722591"} 
[2026-09-18 17:02:20] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789743739279","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":4,"subtotal":2000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"70.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-17T15:05:26.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-18 17:02:20] production.INFO: Stock deduction for product: Zangra-100  
[2026-09-18 17:02:20] production.INFO: Old stock: 70.00  
[2026-09-18 17:02:20] production.INFO: Quantity deducted: 4  
[2026-09-18 17:02:20] production.INFO: New stock: 66  
[2026-09-18 17:02:20] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789743739279"} 
[2026-09-18 17:02:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789743754596","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"6.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-14T15:04:39.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-18 17:02:36] production.INFO: Stock deduction for product: Unosecure  
[2026-09-18 17:02:36] production.INFO: Old stock: 6.00  
[2026-09-18 17:02:36] production.INFO: Quantity deducted: 1  
[2026-09-18 17:02:36] production.INFO: New stock: 5  
[2026-09-18 17:02:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789743754596"} 
[2026-09-18 17:03:29] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789743807475","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Sinurrhon Tablet (120)","sku":"PRD-00004","price":"2000.00","selling_price":"2000.00","purchase_price":"1000.00","quantity":1,"subtotal":2000,"product":{"id":4,"name":"Sinurrhon Tablet (120)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1000.00","last_purchase_price":"1000.00","selling_price":"2000.00","current_stock":"95.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-17T15:05:15.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-18 17:03:29] production.INFO: Stock deduction for product: Sinurrhon Tablet (120)  
[2026-09-18 17:03:29] production.INFO: Old stock: 95.00  
[2026-09-18 17:03:29] production.INFO: Quantity deducted: 1  
[2026-09-18 17:03:29] production.INFO: New stock: 94  
[2026-09-18 17:03:29] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789743807475"} 
[2026-09-18 17:03:51] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789743829995","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":180,"product_id":180,"name":"Face Mask","sku":"PRD-00182","price":"300.00","selling_price":"300.00","purchase_price":"150.00","quantity":2,"subtotal":600,"product":{"id":180,"name":"Face Mask","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"150.00","last_purchase_price":"150.00","selling_price":"300.00","current_stock":"36.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00182","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-17T15:03:34.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-18 17:03:51] production.INFO: Stock deduction for product: Face Mask  
[2026-09-18 17:03:51] production.INFO: Old stock: 36.00  
[2026-09-18 17:03:51] production.INFO: Quantity deducted: 2  
[2026-09-18 17:03:51] production.INFO: New stock: 34  
[2026-09-18 17:03:51] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789743829995"} 
[2026-09-19 18:07:05] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789834023683","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":59,"product_id":59,"name":"Dawacort Cream 15g","sku":"PRD-00060","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":59,"name":"Dawacort Cream 15g","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"4.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00060","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-17T15:04:53.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-19 18:07:05] production.INFO: Stock deduction for product: Dawacort Cream 15g  
[2026-09-19 18:07:05] production.INFO: Old stock: 4.00  
[2026-09-19 18:07:05] production.INFO: Quantity deducted: 1  
[2026-09-19 18:07:05] production.INFO: New stock: 3  
[2026-09-19 18:07:05] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789834023683"} 
[2026-09-19 18:07:23] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789834041908","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":68,"product_id":68,"name":"Albendazole 400mg Tabs (1s)","sku":"PRD-00069","price":"1000.00","selling_price":"1000.00","purchase_price":"500.00","quantity":2,"subtotal":2000,"product":{"id":68,"name":"Albendazole 400mg Tabs (1s)","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"500.00","last_purchase_price":"500.00","selling_price":"1000.00","current_stock":"2.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00069","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-12T14:59:39.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-19 18:07:23] production.INFO: Stock deduction for product: Albendazole 400mg Tabs (1s)  
[2026-09-19 18:07:23] production.INFO: Old stock: 2.00  
[2026-09-19 18:07:23] production.INFO: Quantity deducted: 2  
[2026-09-19 18:07:23] production.INFO: New stock: 0  
[2026-09-19 18:07:23] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789834041908"} 
[2026-09-19 18:07:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789834068005","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":193,"product_id":193,"name":"Ketonazole","sku":"PRD-00195","price":"3500.00","selling_price":"3500.00","purchase_price":"1750.00","quantity":1,"subtotal":3500,"product":{"id":193,"name":"Ketonazole","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"1750.00","last_purchase_price":"1750.00","selling_price":"3500.00","current_stock":"10.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00195","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-07-21T12:27:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-19 18:07:49] production.INFO: Stock deduction for product: Ketonazole  
[2026-09-19 18:07:49] production.INFO: Old stock: 10.00  
[2026-09-19 18:07:49] production.INFO: Quantity deducted: 1  
[2026-09-19 18:07:49] production.INFO: New stock: 9  
[2026-09-19 18:07:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789834068005"} 
[2026-09-20 17:10:17] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789917016059","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":96,"product_id":96,"name":"Unosecure","sku":"PRD-00098","price":"4000.00","selling_price":"4000.00","purchase_price":"2000.00","quantity":1,"subtotal":4000,"product":{"id":96,"name":"Unosecure","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"2000.00","last_purchase_price":"2000.00","selling_price":"4000.00","current_stock":"5.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00098","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-18T15:02:36.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-20 17:10:17] production.INFO: Stock deduction for product: Unosecure  
[2026-09-20 17:10:17] production.INFO: Old stock: 5.00  
[2026-09-20 17:10:17] production.INFO: Quantity deducted: 1  
[2026-09-20 17:10:17] production.INFO: New stock: 4  
[2026-09-20 17:10:17] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789917016059"} 
[2026-09-20 17:10:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789917034366","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":123,"product_id":123,"name":"Water Plaster","sku":"PRD-00125","price":"200.00","selling_price":"200.00","purchase_price":"100.00","quantity":2,"subtotal":400,"product":{"id":123,"name":"Water Plaster","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"100.00","last_purchase_price":"100.00","selling_price":"200.00","current_stock":"84.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00125","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-19","created_at":"2026-07-19T21:17:57.000000Z","updated_at":"2026-09-10T14:52:59.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-20 17:10:36] production.INFO: Stock deduction for product: Water Plaster  
[2026-09-20 17:10:36] production.INFO: Old stock: 84.00  
[2026-09-20 17:10:36] production.INFO: Quantity deducted: 2  
[2026-09-20 17:10:36] production.INFO: New stock: 82  
[2026-09-20 17:10:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789917034366"} 
[2026-09-20 17:10:49] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1789917047352","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":178,"product_id":178,"name":"Zangra-100","sku":"PRD-00180","price":"500.00","selling_price":"500.00","purchase_price":"250.00","quantity":2,"subtotal":1000,"product":{"id":178,"name":"Zangra-100","business_location":"EDUC Pharmacy (BL0001)","unit_id":null,"category_id":null,"brand_id":null,"supplier_id":null,"purchase_price":"250.00","last_purchase_price":"250.00","selling_price":"500.00","current_stock":"66.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00180","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-07-21","created_at":"2026-07-21T12:27:36.000000Z","updated_at":"2026-09-18T15:02:20.000000Z","brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-09-20 17:10:49] production.INFO: Stock deduction for product: Zangra-100  
[2026-09-20 17:10:49] production.INFO: Old stock: 66.00  
[2026-09-20 17:10:49] production.INFO: Quantity deducted: 2  
[2026-09-20 17:10:49] production.INFO: New stock: 64  
[2026-09-20 17:10:49] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1789917047352"} 
[2026-10-07 06:47:23] local.ERROR: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_export_buttons, View export to buttons (csv/excel/print/pdf) on tables, Others, 2026-10-07 06:47:23, 2026-10-07 06:47:23)) {"exception":"[object] (Illuminate\\Database\\UniqueConstraintViolationException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: insert into `permissions` (`name`, `display_name`, `group`, `updated_at`, `created_at`) values (view_export_buttons, View export to buttons (csv/excel/print/pdf) on tables, Others, 2026-10-07 06:47:23, 2026-10-07 06:47:23)) at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pe...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pe...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pe...', Array, 'id')
#3 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pe...', Array, 'id')
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Permission))
#10 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Permission), Object(Closure))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#14 C:/Users/Solomon/Downloads/area25/area25/database/seeders/PermissionSeeder.php(206): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/PermissionSeeder->run()
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate/Database/Seeder->__invoke(Array)
#23 C:/Users/Solomon/Downloads/area25/area25/database/seeders/DatabaseSeeder.php(14): Illuminate/Database/Seeder->call('Database//Seeder...')
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#47 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#48 {main}

[previous exception] [object] (PDOException(code: 23000): SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'view_export_buttons' for key 'permissions.permissions_name_unique' at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php:53)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(53): PDOStatement->execute()
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/MySqlConnection->Illuminate/Database/{closure}('insert into `pe...', Array)
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('insert into `pe...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/MySqlConnection.php(42): Illuminate/Database/Connection->run('insert into `pe...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Processors/MySqlProcessor.php(35): Illuminate/Database/MySqlConnection->insert('insert into `pe...', Array, 'id')
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4103): Illuminate/Database/Query/Processors/MySqlProcessor->processInsertGetId(Object(Illuminate/Database/Query/Builder), 'insert into `pe...', Array, 'id')
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(2235): Illuminate/Database/Query/Builder->insertGetId(Array, 'id')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1436): Illuminate/Database/Eloquent/Builder->__call('insertGetId', Array)
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1401): Illuminate/Database/Eloquent/Model->insertAndSetId(Object(Illuminate/Database/Eloquent/Builder), Array)
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(1240): Illuminate/Database/Eloquent/Model->performInsert(Object(Illuminate/Database/Eloquent/Builder))
#10 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1219): Illuminate/Database/Eloquent/Model->save()
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Support/helpers.php(388): Illuminate/Database/Eloquent/Builder->Illuminate/Database/Eloquent/{closure}(Object(App/Models/Permission))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1218): tap(Object(App/Models/Permission), Object(Closure))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Support/Traits/ForwardsCalls.php(23): Illuminate/Database/Eloquent/Builder->create(Array)
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2540): Illuminate/Database/Eloquent/Model->forwardCallTo(Object(Illuminate/Database/Eloquent/Builder), 'create', Array)
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2556): Illuminate/Database/Eloquent/Model->__call('create', Array)
#16 C:/Users/Solomon/Downloads/area25/area25/database/seeders/PermissionSeeder.php(206): Illuminate/Database/Eloquent/Model::__callStatic('create', Array)
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/PermissionSeeder->run()
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(59): Illuminate/Database/Seeder->__invoke(Array)
#25 C:/Users/Solomon/Downloads/area25/area25/database/seeders/DatabaseSeeder.php(14): Illuminate/Database/Seeder->call('Database//Seeder...')
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Database/Seeders/DatabaseSeeder->run()
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(184): Illuminate/Container/Container->call(Array, Array)
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(193): Illuminate/Database/Seeder->Illuminate/Database/{closure}()
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(71): Illuminate/Database/Seeder->__invoke()
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php(157): Illuminate/Database/Console/Seeds/SeedCommand->Illuminate/Database/Console/Seeds/{closure}()
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(70): Illuminate/Database/Eloquent/Model::unguarded(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Seeds/SeedCommand->handle()
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Seeds/SeedCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#49 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#50 {main}
"} 
[2026-10-07 07:21:45] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791350505472","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":4,"product_id":4,"name":"Amoxicillin 500mg Capsules","sku":"PRD-00004","price":"6000.00","selling_price":"6000.00","purchase_price":"3500.00","quantity":10,"subtotal":60000,"product":{"id":4,"name":"Amoxicillin 500mg Capsules","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":2,"brand_id":2,"supplier_id":1,"purchase_price":"3500.00","last_purchase_price":"3500.00","selling_price":"6000.00","current_stock":"60.00","stock":"60.00","product_type":"Single","tax":null,"sku":"PRD-00004","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2028-04-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:55:55.000000Z","brand":{"id":2,"name":"GSK","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":2,"name":"Antibiotics","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 07:21:46] production.INFO: Stock deduction for product: Amoxicillin 500mg Capsules  
[2026-10-07 07:21:46] production.INFO: Old stock: 60.00  
[2026-10-07 07:21:46] production.INFO: Quantity deducted: 10  
[2026-10-07 07:21:46] production.INFO: New stock: 50  
[2026-10-07 07:21:46] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791350505472"} 
[2026-10-07 07:28:36] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791350916052","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Paracetamol 500mg Tablets","sku":"PRD-00001","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":5,"subtotal":12500,"product":{"id":1,"name":"Paracetamol 500mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"120.00","stock":"120.00","product_type":"Single","tax":null,"sku":"PRD-00001","image":null,"description":null,"alert_quantity":"20.00","expiry_date":"2028-10-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 07:28:36] production.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-10-07 07:28:36] production.INFO: Old stock: 120.00  
[2026-10-07 07:28:36] production.INFO: Quantity deducted: 5  
[2026-10-07 07:28:36] production.INFO: New stock: 115  
[2026-10-07 07:28:36] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791350916052"} 
[2026-10-07 07:32:44] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791351163768","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Paracetamol 500mg Tablets","sku":"PRD-00001","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":1,"name":"Paracetamol 500mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"115.00","stock":"120.00","product_type":"Single","tax":null,"sku":"PRD-00001","image":null,"description":null,"alert_quantity":"20.00","expiry_date":"2028-10-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T05:28:36.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 07:32:44] production.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-10-07 07:32:44] production.INFO: Old stock: 115.00  
[2026-10-07 07:32:44] production.INFO: Quantity deducted: 1  
[2026-10-07 07:32:44] production.INFO: New stock: 114  
[2026-10-07 07:32:44] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791351163768"} 
[2026-10-07 07:33:25] production.INFO: Stock Adjustment - Initial State {"product_id":"1","previous_quantity":"114.00","previous_selling_price":"2500.00","validated_data":{"product_id":"1","adjustment_type":"add","quantity":"5","reason":"new_stock","new_selling_price":null,"new_purchase_price":null,"new_expiry_date":"2026-10-07"}} 
[2026-10-07 07:33:25] production.INFO: Stock Adjustment - After Quantity Save {"product_id":1,"new_quantity":119.0,"current_stock":119.0,"changes_made":"Quantity adjusted"} 
[2026-10-07 08:12:10] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791353530039","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":3,"product_id":3,"name":"Diclofenac 50mg Tablets","sku":"PRD-00003","price":"3000.00","selling_price":"3000.00","purchase_price":"1800.00","quantity":1,"subtotal":3000,"product":{"id":3,"name":"Diclofenac 50mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":1,"brand_id":4,"supplier_id":1,"purchase_price":"1800.00","last_purchase_price":"1800.00","selling_price":"3000.00","current_stock":"60.00","stock":"60.00","product_type":"Single","tax":null,"sku":"PRD-00003","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2028-10-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z","brand":{"id":4,"name":"Cipla","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"airtel_money"}} 
[2026-10-07 08:12:10] production.INFO: Stock deduction for product: Diclofenac 50mg Tablets  
[2026-10-07 08:12:10] production.INFO: Old stock: 60.00  
[2026-10-07 08:12:10] production.INFO: Quantity deducted: 1  
[2026-10-07 08:12:10] production.INFO: New stock: 59  
[2026-10-07 08:12:10] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791353530039"} 
[2026-10-07 08:12:52] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791353572371","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":19,"product_id":19,"name":"Elastic Bandage 10cm","sku":"PRD-00019","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":19,"name":"Elastic Bandage 10cm","business_location":"EDUC Pharmacy (BL0001)","unit_id":6,"category_id":8,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"40.00","stock":"40.00","product_type":"Single","tax":null,"sku":"PRD-00019","image":null,"description":null,"alert_quantity":"10.00","expiry_date":null,"last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":8,"name":"First Aid","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"is_split_payment":true,"payments":[{"method":"mpamba","amount":2000},{"method":"national_bank","amount":500}]}} 
[2026-10-07 08:25:32] production.ERROR: Z report email failed {"register_id":1,"error":"Connection could not be established with host \"smtp.gmail.com:587\": stream_socket_client(): php_network_getaddresses: getaddrinfo for smtp.gmail.com failed: No such host is known. "} 
[2026-10-07 08:58:28] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:28] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.INFO: Stock Adjustment - Initial State {"product_id":4,"previous_quantity":"51.00","previous_selling_price":"6000.00","validated_data":{"product_id":4,"adjustment_type":"subtract","quantity":2,"reason":"LP test damaged"}} 
[2026-10-07 08:58:29] testing.INFO: Stock Adjustment - After Quantity Save {"product_id":4,"new_quantity":49.0,"current_stock":49.0,"changes_made":"Quantity adjusted"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:29] testing.ERROR: Z report email failed {"register_id":4,"error":"syntax error, unexpected end of file, expecting \"elseif\" or \"else\" or \"endif\" (View: C:\\Users\\Solomon\\Downloads\\area25\\area25\\resources\\views\\emails\\z-report.blade.php)"} 
[2026-10-07 08:58:56] testing.INFO: Stock Adjustment - Initial State {"product_id":4,"previous_quantity":"51.00","previous_selling_price":"6000.00","validated_data":{"product_id":4,"adjustment_type":"subtract","quantity":2,"reason":"LP test damaged"}} 
[2026-10-07 08:58:56] testing.INFO: Stock Adjustment - After Quantity Save {"product_id":4,"new_quantity":49.0,"current_stock":49.0,"changes_made":"Quantity adjusted"} 
[2026-10-07 08:59:33] testing.INFO: Stock Adjustment - Initial State {"product_id":4,"previous_quantity":"51.00","previous_selling_price":"6000.00","validated_data":{"product_id":4,"adjustment_type":"subtract","quantity":2,"reason":"LP test damaged"}} 
[2026-10-07 08:59:33] testing.INFO: Stock Adjustment - After Quantity Save {"product_id":4,"new_quantity":49.0,"current_stock":49.0,"changes_made":"Quantity adjusted"} 
[2026-10-07 09:13:55] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791357235121","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":5,"product_id":5,"name":"Ciprofloxacin 500mg Tablets","sku":"PRD-00005","price":"7000.00","selling_price":"7000.00","purchase_price":"4000.00","quantity":1,"subtotal":7000,"product":{"id":5,"name":"Ciprofloxacin 500mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":2,"brand_id":4,"supplier_id":1,"purchase_price":"4000.00","last_purchase_price":"4000.00","selling_price":"7000.00","current_stock":"40.00","stock":"40.00","product_type":"Single","tax":null,"sku":"PRD-00005","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2028-04-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z","brand":{"id":4,"name":"Cipla","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":2,"name":"Antibiotics","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 09:13:55] production.INFO: Stock deduction for product: Ciprofloxacin 500mg Tablets  
[2026-10-07 09:13:55] production.INFO: Old stock: 40.00  
[2026-10-07 09:13:55] production.INFO: Quantity deducted: 1  
[2026-10-07 09:13:55] production.INFO: New stock: 39  
[2026-10-07 09:13:55] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791357235121"} 
[2026-10-07 09:34:37] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791358477344","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Paracetamol 500mg Tablets","sku":"PRD-00001","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":1,"name":"Paracetamol 500mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"119.00","stock":"119.00","product_type":"Single","tax":null,"sku":"PRD-00001","image":null,"description":null,"alert_quantity":"20.00","expiry_date":"2026-10-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T06:59:32.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 09:34:37] production.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-10-07 09:34:37] production.INFO: Old stock: 119.00  
[2026-10-07 09:34:37] production.INFO: Quantity deducted: 1  
[2026-10-07 09:34:37] production.INFO: New stock: 118  
[2026-10-07 09:34:37] production.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791358477344"} 
[2026-10-07 10:08:04] local.ERROR: View [units.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [units.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('units.show', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('units.show')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('units.show', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/UnitController.php(35): view('units.show', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/UnitController->show(Object(App/Models/Unit))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/UnitController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(28): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#72 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#73 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#74 {main}
"} 
[2026-10-07 10:08:11] local.ERROR: View [categories.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [categories.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('categories.show', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('categories.show')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('categories.show', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/CategoryController.php(35): view('categories.show', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/CategoryController->show(Object(App/Models/Category))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/CategoryController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(28): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#72 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#73 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#74 {main}
"} 
[2026-10-07 10:08:16] local.ERROR: View [brands.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [brands.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('brands.show', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('brands.show')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('brands.show', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/BrandController.php(34): view('brands.show', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/BrandController->show(Object(App/Models/Brand))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/BrandController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(28): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#72 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#73 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#74 {main}
"} 
[2026-10-07 10:08:23] local.ERROR: View [pos.stock-report-pdf] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [pos.stock-report-pdf] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('pos.stock-repor...', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('pos.stock-repor...')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('pos.stock-repor...', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/StockReportController.php(126): view('pos.stock-repor...', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockReportController->exportPdf()
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('exportPdf', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockReportController), 'exportPdf')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(28): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#72 {main}
"} 
[2026-10-07 10:08:28] local.ERROR: View [stock-adjustments.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [stock-adjustments.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('stock-adjustmen...', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('stock-adjustmen...')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('stock-adjustmen...', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/StockAdjustmentController.php(220): view('stock-adjustmen...', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->show(Object(App/Models/StockAdjustment))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(28): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#72 {main}
"} 
[2026-10-07 10:08:50] local.ERROR: View [units.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [units.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('units.show', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('units.show')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('units.show', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/UnitController.php(35): view('units.show', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/UnitController->show(Object(App/Models/Unit))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/UnitController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(27): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#72 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#73 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#74 {main}
"} 
[2026-10-07 10:08:51] local.ERROR: View [categories.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [categories.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('categories.show', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('categories.show')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('categories.show', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/CategoryController.php(35): view('categories.show', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/CategoryController->show(Object(App/Models/Category))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/CategoryController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(27): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#72 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#73 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#74 {main}
"} 
[2026-10-07 10:08:54] local.ERROR: View [brands.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [brands.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('brands.show', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('brands.show')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('brands.show', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/BrandController.php(34): view('brands.show', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/BrandController->show(Object(App/Models/Brand))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/BrandController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/app/Http/Middleware/LogUserActivity.php(19): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/LogUserActivity->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(27): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#72 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#73 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#74 {main}
"} 
[2026-10-07 10:08:58] local.ERROR: View [pos.stock-report-pdf] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [pos.stock-report-pdf] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('pos.stock-repor...', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('pos.stock-repor...')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('pos.stock-repor...', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/StockReportController.php(126): view('pos.stock-repor...', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockReportController->exportPdf()
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('exportPdf', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockReportController), 'exportPdf')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(27): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#72 {main}
"} 
[2026-10-07 10:09:00] local.ERROR: View [stock-adjustments.show] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [stock-adjustments.show] not found. at C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('stock-adjustmen...', Array)
#1 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('stock-adjustmen...')
#2 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('stock-adjustmen...', Array, Array)
#3 C:/Users/Solomon/Downloads/area25/area25/app/Http/Controllers/StockAdjustmentController.php(220): view('stock-adjustmen...', Array)
#4 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->show(Object(App/Models/StockAdjustment))
#5 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('show', Array)
#6 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'show')
#7 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#27 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#29 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#52 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41) : eval()'d code(27): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(41): eval()
#55 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/ExecutionClosure.php(90): Psy/{closure}()
#56 C:/Users/Solomon/Downloads/area25/area25/vendor/psy/psysh/src/Shell.php(1653): Psy/ExecutionClosure->execute()
#57 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/tinker/src/Console/TinkerCommand.php(77): Psy/Shell->execute('/nauth()->login(...')
#58 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Laravel/Tinker/Console/TinkerCommand->handle()
#59 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#60 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#62 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#63 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#64 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#65 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#66 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#67 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Laravel/Tinker/Console/TinkerCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#68 C:/Users/Solomon/Downloads/area25/area25/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#69 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#70 C:/Users/Solomon/Downloads/area25/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#71 C:/Users/Solomon/Downloads/area25/area25/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#72 {main}
"} 
[2026-10-07 10:39:17] production.INFO: Product Store - Request Data {"all_data":{"_token":"QzyQ9TqAvPapK197rlm3MubiV1zge6ELQe8rx3bG","name":"shuwaganda","sku":null,"category_id":"1","brand_id":"2","unit_id":"2","purchase_price":"6000","selling_price":"8000","description":null,"purchase_quantity":"60","alert_quantity":"10","expiry_date":"2026-11-06","supplier_id":"2"},"category_id":"1","brand_id":"2","supplier_id":"2"} 
[2026-10-07 10:39:17] production.INFO: Product Store - Validation Success {"validated_data":{"name":"shuwaganda","unit_id":"2","category_id":"1","brand_id":"2","supplier_id":"2","purchase_price":"6000","selling_price":"8000","sku":null,"alert_quantity":"10","expiry_date":"2026-11-06","description":null,"purchase_quantity":"60"},"category_id_value":"1","brand_id_value":"2"} 
[2026-10-07 10:39:17] production.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"shuwaganda","unit_id":"2","category_id":"1","brand_id":"2","supplier_id":"2","purchase_price":"6000","selling_price":"8000","sku":"PRD-00021","alert_quantity":"10","expiry_date":"2026-11-06","description":null,"purchase_quantity":"60","business_location":"EDUC Pharmacy (BL0001)","product_type":"Single","current_stock":"60","last_purchase_price":"6000","last_purchase_date":"2026-10-07 10:39:17"},"business_location":"EDUC Pharmacy (BL0001)","product_type":"Single"} 
[2026-10-07 10:39:17] production.INFO: Product Store - Product Created {"product_id":21,"product_name":"shuwaganda","product_sku":"PRD-00021"} 
[2026-10-07 10:40:50] production.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791362450535","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":21,"product_id":21,"name":"shuwaganda","sku":"PRD-00021","price":"8000.00","selling_price":"8000.00","purchase_price":"6000.00","quantity":2,"subtotal":16000,"product":{"id":21,"name":"shuwaganda","business_location":"EDUC Pharmacy (BL0001)","unit_id":2,"category_id":1,"brand_id":2,"supplier_id":2,"purchase_price":"6000.00","last_purchase_price":"6000.00","selling_price":"8000.00","current_stock":"60.00","stock":"0.00","product_type":"Single","tax":null,"sku":"PRD-00021","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2026-11-06","last_purchase_date":"2026-10-07","created_at":"2026-10-07T08:39:17.000000Z","updated_at":"2026-10-07T08:39:17.000000Z","brand":{"id":2,"name":"GSK","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"is_split_payment":true,"payments":[{"method":"cash","amount":1600},{"method":"airtel_money","amount":14400}]}} 
[2026-10-07 16:05:43] testing.ERROR: Cannot redeclare permittedResource() (previously declared in C:\Users\Solomon\Downloads\area25v1\area25\routes\web.php:75) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare permittedResource() (previously declared in C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\routes\\web.php:75) at C:/Users/Solomon/Downloads/area25v1/area25/routes/web.php:75)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(247): Symfony/Component/ErrorHandler/Error/FatalError->__construct(message: ''Cannot redecla...', code: '0', error: '['type' => 64, ...', traceOffset: '0', traceArgs: '???', trace: '???')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(234): Illuminate/Foundation/Bootstrap/HandleExceptions->fatalErrorFromPhpError(error: '['type' => 64, ...', traceOffset: '0')
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleShutdown()
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(0): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure:C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:257-259}()
#4 {main}
"} 
[2026-10-07 16:05:43] testing.ERROR: Cannot redeclare permittedResource() (previously declared in C:\Users\Solomon\Downloads\area25v1\area25\routes\web.php:75) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare permittedResource() (previously declared in C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\routes\\web.php:75) at C:/Users/Solomon/Downloads/area25v1/area25/routes/web.php:75)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(247): Symfony/Component/ErrorHandler/Error/FatalError->__construct(message: ''Cannot redecla...', code: '0', error: '['type' => 64, ...', traceOffset: '0', traceArgs: '???', trace: '???')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(234): Illuminate/Foundation/Bootstrap/HandleExceptions->fatalErrorFromPhpError(error: '['type' => 64, ...', traceOffset: '0')
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(258): Illuminate/Foundation/Bootstrap/HandleExceptions->handleShutdown()
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php(0): Illuminate/Foundation/Bootstrap/HandleExceptions->Illuminate/Foundation/Bootstrap/{closure:C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/HandleExceptions.php:257-259}()
#4 {main}
"} 
[2026-10-07 16:05:48] testing.ERROR: Cannot redeclare permittedResource() (previously declared in C:\Users\Solomon\Downloads\area25v1\area25\routes\web.php:75) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare permittedResource() (previously declared in C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\routes\\web.php:75) at C:/Users/Solomon/Downloads/area25v1/area25/routes/web.php:75)
[stacktrace]
#0 {main}
"} 
[2026-10-07 16:05:48] testing.ERROR: Cannot redeclare permittedResource() (previously declared in C:\Users\Solomon\Downloads\area25v1\area25\routes\web.php:75) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare permittedResource() (previously declared in C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\routes\\web.php:75) at C:/Users/Solomon/Downloads/area25v1/area25/routes/web.php:75)
[stacktrace]
#0 {main}
"} 
[2026-10-07 16:05:52] testing.ERROR: Cannot redeclare permittedResource() (previously declared in C:\Users\Solomon\Downloads\area25v1\area25\routes\web.php:75) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare permittedResource() (previously declared in C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\routes\\web.php:75) at C:/Users/Solomon/Downloads/area25v1/area25/routes/web.php:75)
[stacktrace]
#0 {main}
"} 
[2026-10-07 16:05:52] testing.ERROR: Cannot redeclare permittedResource() (previously declared in C:\Users\Solomon\Downloads\area25v1\area25\routes\web.php:75) {"exception":"[object] (Symfony\\Component\\ErrorHandler\\Error\\FatalError(code: 0): Cannot redeclare permittedResource() (previously declared in C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\routes\\web.php:75) at C:/Users/Solomon/Downloads/area25v1/area25/routes/web.php:75)
[stacktrace]
#0 {main}
"} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac651d18cb8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:09] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:06:09] testing.INFO: Old stock: 10  
[2026-10-07 16:06:09] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:06:09] testing.INFO: New stock: 7  
[2026-10-07 16:06:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac651d18cb8f"} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac651d198406","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:09] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:06:09] testing.INFO: Old stock: 10  
[2026-10-07 16:06:09] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:06:09] testing.INFO: New stock: 8  
[2026-10-07 16:06:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac651d198406"} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac651d19f6ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac651d1a4bbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac651d1aa31f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac651d1afb5a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:06:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac651d1b6715","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:06:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac651d7e7148","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:06:15] testing.INFO: Old stock: 10  
[2026-10-07 16:06:15] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:06:15] testing.INFO: New stock: 7  
[2026-10-07 16:06:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac651d7e7148"} 
[2026-10-07 16:06:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac651d8043c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:16] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:06:16] testing.INFO: Old stock: 10  
[2026-10-07 16:06:16] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:06:16] testing.INFO: New stock: 8  
[2026-10-07 16:06:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac651d8043c1"} 
[2026-10-07 16:06:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac651d80fa52","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:16] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac651d8146ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:16] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 16:06:16] testing.INFO: Old stock: 5  
[2026-10-07 16:06:16] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:06:16] testing.INFO: New stock: 2  
[2026-10-07 16:06:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac651d81a485","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:06:16] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 16:06:16] testing.INFO: Old stock: 5  
[2026-10-07 16:06:16] testing.INFO: Quantity deducted: -4  
[2026-10-07 16:06:16] testing.INFO: New stock: 9  
[2026-10-07 16:06:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac651d81a485"} 
[2026-10-07 16:06:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac651d820d96","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:06:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac651d828386","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:32:28] testing.ERROR: Unclosed '[' does not match ')' (View: C:\Users\Solomon\Downloads\area25v1\area25\resources\views\pos\pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Unclosed '[' does not match ')' (View: C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\resources\\views\\pos\\pos.blade.php) at C:/Users/Solomon/Downloads/area25v1/area25/storage/framework/views/12bd30851692b4dcb64c077b1f49e97e.php:391)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ParseError), 1)
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Solomo...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Solomo...', Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'add_pos_sell')
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/pos/create', Array, Array, Array, Array)
#58 C:/Users/Solomon/Downloads/area25v1/area25/tests/Feature/BusinessSettingsTest.php(79): Illuminate/Foundation/Testing/TestCase->get('/pos/create')
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/BusinessSettingsTest->test_pos_page_only_sends_receipt_details_to_the_browser()
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/BusinessSettingsTest))
#63 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#65 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#66 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#67 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#68 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#69 C:/Users/Solomon/Downloads/area25v1/area25/vendor/bin/phpunit(122): include('C://Users//Solomo...')
#70 {main}

[previous exception] [object] (ParseError(code: 0): Unclosed '[' does not match ')' at C:/Users/Solomon/Downloads/area25v1/area25/storage/framework/views/12bd30851692b4dcb64c077b1f49e97e.php:391)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Solomo...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Solomo...', Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Solomo...', Array)
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'add_pos_sell')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/pos/create', Array, Array, Array, Array)
#59 C:/Users/Solomon/Downloads/area25v1/area25/tests/Feature/BusinessSettingsTest.php(79): Illuminate/Foundation/Testing/TestCase->get('/pos/create')
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/BusinessSettingsTest->test_pos_page_only_sends_receipt_details_to_the_browser()
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#63 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/BusinessSettingsTest))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#65 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#66 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#67 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#68 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#69 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#70 C:/Users/Solomon/Downloads/area25v1/area25/vendor/bin/phpunit(122): include('C://Users//Solomo...')
#71 {main}
"} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac657ff69fad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:31] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:32:31] testing.INFO: Old stock: 10  
[2026-10-07 16:32:31] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:32:31] testing.INFO: New stock: 7  
[2026-10-07 16:32:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac657ff69fad"} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac657ff7d985","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:32:31] testing.INFO: Old stock: 10  
[2026-10-07 16:32:31] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:32:31] testing.INFO: New stock: 8  
[2026-10-07 16:32:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac657ff7d985"} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac657ff8b065","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac657ff98c37","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac657ffa8652","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac657ffb67a7","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:32:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac657ffc9e7a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:32:54] testing.ERROR: Unclosed '[' does not match ')' (View: C:\Users\Solomon\Downloads\area25v1\area25\resources\views\pos\pos.blade.php) {"userId":1,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Unclosed '[' does not match ')' (View: C:\\Users\\Solomon\\Downloads\\area25v1\\area25\\resources\\views\\pos\\pos.blade.php) at C:/Users/Solomon/Downloads/area25v1/area25/storage/framework/views/12bd30851692b4dcb64c077b1f49e97e.php:391)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(ParseError), 1)
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Solomo...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Solomo...', Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'add_pos_sell')
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/pos/create', Array, Array, Array, Array)
#58 C:/Users/Solomon/Downloads/area25v1/area25/tests/Feature/BusinessSettingsTest.php(79): Illuminate/Foundation/Testing/TestCase->get('/pos/create')
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/BusinessSettingsTest->test_pos_page_only_sends_receipt_details_to_the_browser()
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/BusinessSettingsTest))
#63 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#65 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#66 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#67 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#68 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#69 C:/Users/Solomon/Downloads/area25v1/area25/vendor/bin/phpunit(122): include('C://Users//Solomo...')
#70 {main}

[previous exception] [object] (ParseError(code: 0): Unclosed '[' does not match ')' at C:/Users/Solomon/Downloads/area25v1/area25/storage/framework/views/12bd30851692b4dcb64c077b1f49e97e.php:391)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Solomo...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Solomo...', Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Solomo...', Array)
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(78): Illuminate/View/View->render()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Response.php(34): Illuminate/Http/Response->setContent(Object(Illuminate/View/View))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(939): Illuminate/Http/Response->__construct(Object(Illuminate/View/View), 200, Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(906): Illuminate/Routing/Router::toResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Routing/Router->prepareResponse(Object(Illuminate/Http/Request), Object(Illuminate/View/View))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'add_pos_sell')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/pos/create', Array, Array, Array, Array)
#59 C:/Users/Solomon/Downloads/area25v1/area25/tests/Feature/BusinessSettingsTest.php(79): Illuminate/Foundation/Testing/TestCase->get('/pos/create')
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/BusinessSettingsTest->test_pos_page_only_sends_receipt_details_to_the_browser()
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#63 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/BusinessSettingsTest))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#65 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#66 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#67 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#68 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#69 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#70 C:/Users/Solomon/Downloads/area25v1/area25/vendor/bin/phpunit(122): include('C://Users//Solomo...')
#71 {main}
"} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6581721729","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:32:55] testing.INFO: Old stock: 10  
[2026-10-07 16:32:55] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:32:55] testing.INFO: New stock: 7  
[2026-10-07 16:32:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6581721729"} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac6581728803","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:32:55] testing.INFO: Old stock: 10  
[2026-10-07 16:32:55] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:32:55] testing.INFO: New stock: 8  
[2026-10-07 16:32:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6581728803"} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac658172e6e6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6581733f2d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac6581738b7e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac658173d9a3","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6581743d52","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6582a0c0bf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:33:14] testing.INFO: Old stock: 10  
[2026-10-07 16:33:14] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:33:14] testing.INFO: New stock: 7  
[2026-10-07 16:33:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6582a0c0bf"} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac6582a147af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:33:14] testing.INFO: Old stock: 10  
[2026-10-07 16:33:14] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:33:14] testing.INFO: New stock: 8  
[2026-10-07 16:33:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6582a147af"} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6582a1d457","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6582a22ae9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac6582a29312","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6582a2eb2e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:33:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6582a350ed","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac65851a7f0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:33:53] testing.INFO: Old stock: 10  
[2026-10-07 16:33:53] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:33:53] testing.INFO: New stock: 7  
[2026-10-07 16:33:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac65851a7f0d"} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac65851b0c20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:53] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:33:53] testing.INFO: Old stock: 10  
[2026-10-07 16:33:53] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:33:53] testing.INFO: New stock: 8  
[2026-10-07 16:33:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac65851b0c20"} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac65851b67b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac65851bc0f6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac65851c12d6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac65851c611b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac65851cca3e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:33:54] testing.ERROR: View [pos.stock-report-pdf] not found. {"userId":1,"exception":"[object] (InvalidArgumentException(code: 0): View [pos.stock-report-pdf] not found. at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php:138)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/FileViewFinder.php(78): Illuminate/View/FileViewFinder->findInPaths('pos.stock-repor...', Array)
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Factory.php(150): Illuminate/View/FileViewFinder->find('pos.stock-repor...')
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(1100): Illuminate/View/Factory->make('pos.stock-repor...', Array, Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/StockReportController.php(126): view('pos.stock-repor...', Array)
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockReportController->exportPdf()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('exportPdf', Array)
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockReportController), 'exportPdf')
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_stock_repo...')
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/stock-report/e...', Array, Array, Array, Array)
#57 C:/Users/Solomon/Downloads/area25v1/area25/tests/Feature/PagesRenderTest.php(47): Illuminate/Foundation/Testing/TestCase->get('/stock-report/e...')
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/PagesRenderTest->test_every_page_without_parameters_renders_for_super_admin()
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/PagesRenderTest))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#63 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#65 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#66 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#67 C:/Users/Solomon/Downloads/area25v1/area25/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#68 C:/Users/Solomon/Downloads/area25v1/area25/vendor/bin/phpunit(122): include('C://Users//Solomo...')
#69 {main}
"} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6587533f6f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:34:29] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 16:34:29] testing.INFO: Old stock: 10  
[2026-10-07 16:34:29] testing.INFO: Quantity deducted: 3  
[2026-10-07 16:34:29] testing.INFO: New stock: 7  
[2026-10-07 16:34:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6587533f6f"} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac658753d8b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:34:29] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 16:34:29] testing.INFO: Old stock: 10  
[2026-10-07 16:34:29] testing.INFO: Quantity deducted: 2  
[2026-10-07 16:34:29] testing.INFO: New stock: 8  
[2026-10-07 16:34:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac658753d8b2"} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6587544892","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac658754ace2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac6587550376","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac65875564fe","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 16:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac658755cb77","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:05:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac65fa297ff2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 17:05:06] testing.INFO: Old stock: 10  
[2026-10-07 17:05:06] testing.INFO: Quantity deducted: 3  
[2026-10-07 17:05:06] testing.INFO: New stock: 7  
[2026-10-07 17:05:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac65fa297ff2"} 
[2026-10-07 17:05:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac65fa2d6529","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 17:05:06] testing.INFO: Old stock: 10  
[2026-10-07 17:05:06] testing.INFO: Quantity deducted: 2  
[2026-10-07 17:05:06] testing.INFO: New stock: 8  
[2026-10-07 17:05:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac65fa2d6529"} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac65fa305a98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac65fa324a58","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac65fa342e27","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac65fa361f0c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac65fa37fca1","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:07] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 17:05:07] testing.INFO: Old stock: 10  
[2026-10-07 17:05:07] testing.INFO: Quantity deducted: 2  
[2026-10-07 17:05:07] testing.INFO: New stock: 8  
[2026-10-07 17:05:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:05:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:07] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 17:05:07] testing.INFO: Old stock: 10  
[2026-10-07 17:05:07] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:05:07] testing.INFO: New stock: 9  
[2026-10-07 17:05:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:05:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:05:00+02:00"}} 
[2026-10-07 17:05:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 17:05:08] testing.INFO: Old stock: 10  
[2026-10-07 17:05:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:05:08] testing.INFO: New stock: 9  
[2026-10-07 17:05:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:05:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T17:05:08+02:00"}} 
[2026-10-07 17:05:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 17:05:08] testing.INFO: Old stock: 10  
[2026-10-07 17:05:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:05:08] testing.INFO: New stock: 9  
[2026-10-07 17:05:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:05:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T17:05:08+02:00"}} 
[2026-10-07 17:05:08] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 17:05:08] testing.INFO: Old stock: 1  
[2026-10-07 17:05:08] testing.INFO: Quantity deducted: 3  
[2026-10-07 17:05:08] testing.INFO: New stock: 0  
[2026-10-07 17:05:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:05:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:05:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T17:05:08+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 17:05:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T14:05:08+02:00"}} 
[2026-10-07 17:05:08] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 17:05:08] testing.INFO: Old stock: 10  
[2026-10-07 17:05:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:05:08] testing.INFO: New stock: 9  
[2026-10-07 17:05:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:12:09] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791385929380078","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Panadol 500mg","sku":"E2E-PAN","price":1000,"selling_price":1000,"purchase_price":600,"quantity":1,"subtotal":1000,"product":{"id":1,"name":"Panadol 500mg","business_location":"Main","unit_id":null,"category_id":null,"brand_id":null,"purchase_price":600,"selling_price":1000,"current_stock":10,"product_type":"Single","tax":null,"sku":"E2E-PAN","image":null,"created_at":"2026-10-07T15:08:41.000000Z","updated_at":"2026-10-07T15:08:41.000000Z","description":null,"alert_quantity":null,"stock":0,"supplier_id":null,"expiry_date":null,"last_purchase_price":null,"last_purchase_date":null,"brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-10-07 17:12:09] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:12:09] local.INFO: Old stock: 10  
[2026-10-07 17:12:09] local.INFO: Quantity deducted: 1  
[2026-10-07 17:12:09] local.INFO: New stock: 9  
[2026-10-07 17:12:09] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791385929380078"} 
[2026-10-07 17:12:44] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791385963890190","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Panadol 500mg","sku":"E2E-PAN","price":1000,"selling_price":1000,"purchase_price":600,"quantity":1,"subtotal":1000,"product":{"id":1,"name":"Panadol 500mg","business_location":"Main","unit_id":null,"category_id":null,"brand_id":null,"purchase_price":600,"selling_price":1000,"current_stock":9,"product_type":"Single","tax":null,"sku":"E2E-PAN","image":null,"created_at":"2026-10-07T15:08:41.000000Z","updated_at":"2026-10-07T15:12:09.000000Z","description":null,"alert_quantity":null,"stock":0,"supplier_id":null,"expiry_date":null,"last_purchase_price":null,"last_purchase_date":null,"brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-10-07 17:12:44] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:12:44] local.INFO: Old stock: 9  
[2026-10-07 17:12:44] local.INFO: Quantity deducted: 1  
[2026-10-07 17:12:44] local.INFO: New stock: 8  
[2026-10-07 17:12:44] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791385963890190"} 
[2026-10-07 17:13:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791385965350524","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":2,"quantity":2,"name":"Vitamin C"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:12:45.353Z","paid_total":5000}} 
[2026-10-07 17:13:07] local.INFO: Stock deduction for product: Vitamin C  
[2026-10-07 17:13:07] local.INFO: Old stock: 5  
[2026-10-07 17:13:07] local.INFO: Quantity deducted: 2  
[2026-10-07 17:13:07] local.INFO: New stock: 3  
[2026-10-07 17:13:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791385965350524"} 
[2026-10-07 17:13:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791385976870923","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":1,"quantity":1,"name":"Panadol 500mg"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:12:56.870Z","paid_total":1000}} 
[2026-10-07 17:13:07] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:13:07] local.INFO: Old stock: 8  
[2026-10-07 17:13:07] local.INFO: Quantity deducted: 1  
[2026-10-07 17:13:07] local.INFO: New stock: 7  
[2026-10-07 17:13:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791385976870923"} 
[2026-10-07 17:13:08] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-PENDING-TEST","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":2,"quantity":2,"name":"Vitamin C"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:12:45.353Z","paid_total":5000}} 
[2026-10-07 17:13:08] local.INFO: Stock deduction for product: Vitamin C  
[2026-10-07 17:13:08] local.INFO: Old stock: 3  
[2026-10-07 17:13:08] local.INFO: Quantity deducted: 2  
[2026-10-07 17:13:08] local.INFO: New stock: 1  
[2026-10-07 17:13:08] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-PENDING-TEST"} 
[2026-10-07 17:14:21] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386061288229","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Panadol 500mg","sku":"E2E-PAN","price":1000,"selling_price":1000,"purchase_price":600,"quantity":1,"subtotal":1000,"product":{"id":1,"name":"Panadol 500mg","business_location":"Main","unit_id":null,"category_id":null,"brand_id":null,"purchase_price":600,"selling_price":1000,"current_stock":7,"product_type":"Single","tax":null,"sku":"E2E-PAN","image":null,"created_at":"2026-10-07T15:08:41.000000Z","updated_at":"2026-10-07T15:13:07.000000Z","description":null,"alert_quantity":null,"stock":0,"supplier_id":null,"expiry_date":null,"last_purchase_price":null,"last_purchase_date":null,"brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-10-07 17:14:21] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:14:21] local.INFO: Old stock: 7  
[2026-10-07 17:14:21] local.INFO: Quantity deducted: 1  
[2026-10-07 17:14:21] local.INFO: New stock: 6  
[2026-10-07 17:14:21] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386061288229"} 
[2026-10-07 17:20:41] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386441491401","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Panadol 500mg","sku":"E2E-PAN","price":1000,"selling_price":1000,"purchase_price":600,"quantity":1,"subtotal":1000,"product":{"id":1,"name":"Panadol 500mg","business_location":"Main","unit_id":null,"category_id":null,"brand_id":null,"purchase_price":600,"selling_price":1000,"current_stock":10,"product_type":"Single","tax":null,"sku":"E2E-PAN","image":null,"created_at":"2026-10-07T15:20:22.000000Z","updated_at":"2026-10-07T15:20:22.000000Z","description":null,"alert_quantity":null,"stock":0,"supplier_id":null,"expiry_date":null,"last_purchase_price":null,"last_purchase_date":null,"brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-10-07 17:20:41] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:20:41] local.INFO: Old stock: 10  
[2026-10-07 17:20:41] local.INFO: Quantity deducted: 1  
[2026-10-07 17:20:41] local.INFO: New stock: 9  
[2026-10-07 17:20:41] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386441491401"} 
[2026-10-07 17:21:05] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386443092112","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":2,"quantity":2,"name":"Vitamin C"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:20:43.132Z","paid_total":5000}} 
[2026-10-07 17:21:05] local.INFO: Stock deduction for product: Vitamin C  
[2026-10-07 17:21:05] local.INFO: Old stock: 5  
[2026-10-07 17:21:05] local.INFO: Quantity deducted: 2  
[2026-10-07 17:21:05] local.INFO: New stock: 3  
[2026-10-07 17:21:05] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386443092112"} 
[2026-10-07 17:21:05] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386454680963","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":1,"quantity":1,"name":"Panadol 500mg"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:20:54.680Z","paid_total":1000}} 
[2026-10-07 17:21:05] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:21:05] local.INFO: Old stock: 9  
[2026-10-07 17:21:05] local.INFO: Quantity deducted: 1  
[2026-10-07 17:21:05] local.INFO: New stock: 8  
[2026-10-07 17:21:05] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386454680963"} 
[2026-10-07 17:23:11] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386590875520","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Panadol 500mg","sku":"E2E-PAN","price":1000,"selling_price":1000,"purchase_price":600,"quantity":1,"subtotal":1000,"product":{"id":1,"name":"Panadol 500mg","business_location":"Main","unit_id":null,"category_id":null,"brand_id":null,"purchase_price":600,"selling_price":1000,"current_stock":10,"product_type":"Single","tax":null,"sku":"E2E-PAN","image":null,"created_at":"2026-10-07T15:22:59.000000Z","updated_at":"2026-10-07T15:22:59.000000Z","description":null,"alert_quantity":null,"stock":0,"supplier_id":null,"expiry_date":null,"last_purchase_price":null,"last_purchase_date":null,"brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-10-07 17:23:11] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:23:11] local.INFO: Old stock: 10  
[2026-10-07 17:23:11] local.INFO: Quantity deducted: 1  
[2026-10-07 17:23:11] local.INFO: New stock: 9  
[2026-10-07 17:23:11] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386590875520"} 
[2026-10-07 17:23:34] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386592393586","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":2,"quantity":2,"name":"Vitamin C"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:23:12.395Z","paid_total":5000}} 
[2026-10-07 17:23:34] local.INFO: Stock deduction for product: Vitamin C  
[2026-10-07 17:23:34] local.INFO: Old stock: 5  
[2026-10-07 17:23:34] local.INFO: Quantity deducted: 2  
[2026-10-07 17:23:34] local.INFO: New stock: 3  
[2026-10-07 17:23:34] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386592393586"} 
[2026-10-07 17:23:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791386603959816","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":1,"quantity":1,"name":"Panadol 500mg"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:23:23.959Z","paid_total":1000}} 
[2026-10-07 17:23:35] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:23:35] local.INFO: Old stock: 9  
[2026-10-07 17:23:35] local.INFO: Quantity deducted: 1  
[2026-10-07 17:23:35] local.INFO: New stock: 8  
[2026-10-07 17:23:35] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791386603959816"} 
[2026-10-07 17:24:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac66416a7b09","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 17:24:06] testing.INFO: Old stock: 10  
[2026-10-07 17:24:06] testing.INFO: Quantity deducted: 3  
[2026-10-07 17:24:06] testing.INFO: New stock: 7  
[2026-10-07 17:24:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac66416a7b09"} 
[2026-10-07 17:24:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac66416e91e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 17:24:06] testing.INFO: Old stock: 10  
[2026-10-07 17:24:06] testing.INFO: Quantity deducted: 2  
[2026-10-07 17:24:06] testing.INFO: New stock: 8  
[2026-10-07 17:24:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac66416e91e0"} 
[2026-10-07 17:24:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac664171b29f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:07] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac664173c73c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac664175bdb4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac664177cde1","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:24:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac664179f22c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:24:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:07] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 17:24:07] testing.INFO: Old stock: 10  
[2026-10-07 17:24:07] testing.INFO: Quantity deducted: 2  
[2026-10-07 17:24:07] testing.INFO: New stock: 8  
[2026-10-07 17:24:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:08] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 17:24:08] testing.INFO: Old stock: 10  
[2026-10-07 17:24:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:24:08] testing.INFO: New stock: 9  
[2026-10-07 17:24:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:24:00+02:00"}} 
[2026-10-07 17:24:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 17:24:08] testing.INFO: Old stock: 10  
[2026-10-07 17:24:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:24:08] testing.INFO: New stock: 9  
[2026-10-07 17:24:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T17:24:08+02:00"}} 
[2026-10-07 17:24:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 17:24:08] testing.INFO: Old stock: 10  
[2026-10-07 17:24:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:24:08] testing.INFO: New stock: 9  
[2026-10-07 17:24:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T17:24:08+02:00"}} 
[2026-10-07 17:24:08] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 17:24:08] testing.INFO: Old stock: 1  
[2026-10-07 17:24:08] testing.INFO: Quantity deducted: 3  
[2026-10-07 17:24:08] testing.INFO: New stock: 0  
[2026-10-07 17:24:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T17:24:08+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 17:24:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T14:24:08+02:00"}} 
[2026-10-07 17:24:08] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 17:24:08] testing.INFO: Old stock: 10  
[2026-10-07 17:24:08] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:24:08] testing.INFO: New stock: 9  
[2026-10-07 17:24:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:46:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac669666bbd2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:46] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 17:46:46] testing.INFO: Old stock: 10  
[2026-10-07 17:46:46] testing.INFO: Quantity deducted: 3  
[2026-10-07 17:46:46] testing.INFO: New stock: 7  
[2026-10-07 17:46:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac669666bbd2"} 
[2026-10-07 17:46:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac66966b6e2a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:46] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 17:46:46] testing.INFO: Old stock: 10  
[2026-10-07 17:46:46] testing.INFO: Quantity deducted: 2  
[2026-10-07 17:46:46] testing.INFO: New stock: 8  
[2026-10-07 17:46:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac66966b6e2a"} 
[2026-10-07 17:46:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac66966dcb23","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6696702d01","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac669671ce8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6696737d1d","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6696757087","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 17:46:47] testing.INFO: Old stock: 10  
[2026-10-07 17:46:47] testing.INFO: Quantity deducted: 2  
[2026-10-07 17:46:47] testing.INFO: New stock: 8  
[2026-10-07 17:46:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 17:46:47] testing.INFO: Old stock: 10  
[2026-10-07 17:46:47] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:46:47] testing.INFO: New stock: 9  
[2026-10-07 17:46:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:46:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:46:00+02:00"}} 
[2026-10-07 17:46:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 17:46:47] testing.INFO: Old stock: 10  
[2026-10-07 17:46:47] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:46:47] testing.INFO: New stock: 9  
[2026-10-07 17:46:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:46:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T17:46:48+02:00"}} 
[2026-10-07 17:46:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 17:46:48] testing.INFO: Old stock: 10  
[2026-10-07 17:46:48] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:46:48] testing.INFO: New stock: 9  
[2026-10-07 17:46:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:46:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T17:46:48+02:00"}} 
[2026-10-07 17:46:48] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 17:46:48] testing.INFO: Old stock: 1  
[2026-10-07 17:46:48] testing.INFO: Quantity deducted: 3  
[2026-10-07 17:46:48] testing.INFO: New stock: 0  
[2026-10-07 17:46:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:46:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 17:46:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T17:46:48+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 17:46:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T14:46:48+02:00"}} 
[2026-10-07 17:46:48] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 17:46:48] testing.INFO: Old stock: 10  
[2026-10-07 17:46:48] testing.INFO: Quantity deducted: 1  
[2026-10-07 17:46:48] testing.INFO: New stock: 9  
[2026-10-07 17:46:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 17:48:31] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791388111425271","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Panadol 500mg","sku":"E2E-PAN","price":1000,"selling_price":1000,"quantity":1,"subtotal":1000,"product":{"id":1,"name":"Panadol 500mg","business_location":"Main","unit_id":null,"category_id":null,"brand_id":null,"selling_price":1000,"current_stock":8,"product_type":"Single","tax":null,"sku":"E2E-PAN","image":null,"created_at":"2026-10-07T15:22:59.000000Z","updated_at":"2026-10-07T15:23:35.000000Z","description":null,"alert_quantity":null,"stock":0,"supplier_id":null,"expiry_date":null,"last_purchase_date":null,"brand":null,"category":null}}],"payment_method":"cash"}} 
[2026-10-07 17:48:31] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:48:31] local.INFO: Old stock: 8  
[2026-10-07 17:48:31] local.INFO: Quantity deducted: 1  
[2026-10-07 17:48:31] local.INFO: New stock: 7  
[2026-10-07 17:48:31] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791388111425271"} 
[2026-10-07 17:48:55] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791388113169308","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":2,"quantity":2,"name":"Vitamin C"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:48:33.211Z","paid_total":5000}} 
[2026-10-07 17:48:55] local.INFO: Stock deduction for product: Vitamin C  
[2026-10-07 17:48:55] local.INFO: Old stock: 3  
[2026-10-07 17:48:55] local.INFO: Quantity deducted: 2  
[2026-10-07 17:48:55] local.INFO: New stock: 1  
[2026-10-07 17:48:55] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791388113169308"} 
[2026-10-07 17:48:55] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791388124852175","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"product_id":1,"quantity":1,"name":"Panadol 500mg"}],"payment_method":"cash","offline":true,"sold_at":"2026-10-07T15:48:44.852Z","paid_total":1000}} 
[2026-10-07 17:48:55] local.INFO: Stock deduction for product: Panadol 500mg  
[2026-10-07 17:48:55] local.INFO: Old stock: 7  
[2026-10-07 17:48:55] local.INFO: Quantity deducted: 1  
[2026-10-07 17:48:55] local.INFO: New stock: 6  
[2026-10-07 17:48:55] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791388124852175"} 
[2026-10-07 18:13:27] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791389606947511","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Paracetamol 500mg Tablets","sku":"PRD-00001","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":1,"name":"Paracetamol 500mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"117.00","stock":"117.00","product_type":"Single","tax":null,"sku":"PRD-00001","image":null,"description":null,"alert_quantity":"20.00","expiry_date":"2026-10-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T08:01:29.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 18:13:27] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-10-07 18:13:27] local.INFO: Old stock: 117.00  
[2026-10-07 18:13:27] local.INFO: Quantity deducted: 1  
[2026-10-07 18:13:27] local.INFO: New stock: 116  
[2026-10-07 18:13:27] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791389606947511"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6702c4c361","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:15:40] testing.INFO: New stock: 7  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6702c4c361"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac6702c5aced","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:15:40] testing.INFO: New stock: 8  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac6702c5aced"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6702c62763","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6702c69691","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac6702c704c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6702c76ec8","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6702c7e82f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:15:40] testing.INFO: New stock: 8  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:15:40] testing.INFO: New stock: 9  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T16:15:00+02:00"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:15:40] testing.INFO: New stock: 9  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T18:15:40+02:00"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:15:40] testing.INFO: New stock: 9  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:15:40+02:00"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 18:15:40] testing.INFO: Old stock: 1  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:15:40] testing.INFO: New stock: 0  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:15:40+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 18:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:15:40+02:00"}} 
[2026-10-07 18:15:40] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 18:15:40] testing.INFO: Old stock: 10  
[2026-10-07 18:15:40] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:15:40] testing.INFO: New stock: 9  
[2026-10-07 18:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:17:31] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791389851014404","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":1,"product_id":1,"name":"Paracetamol 500mg Tablets","sku":"PRD-00001","price":"2500.00","selling_price":"2500.00","purchase_price":"1500.00","quantity":1,"subtotal":2500,"product":{"id":1,"name":"Paracetamol 500mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":1,"brand_id":1,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2500.00","current_stock":"116.00","stock":"117.00","product_type":"Single","tax":null,"sku":"PRD-00001","image":null,"description":null,"alert_quantity":"20.00","expiry_date":"2026-10-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T16:13:27.000000Z","brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":1,"name":"Pain Killers","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"}}}],"payment_method":"cash"}} 
[2026-10-07 18:17:31] local.INFO: Stock deduction for product: Paracetamol 500mg Tablets  
[2026-10-07 18:17:31] local.INFO: Old stock: 116.00  
[2026-10-07 18:17:31] local.INFO: Quantity deducted: 1  
[2026-10-07 18:17:31] local.INFO: New stock: 115  
[2026-10-07 18:17:31] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791389851014404"} 
[2026-10-07 18:35:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac674b8ed857","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:05] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:35:05] testing.INFO: Old stock: 10  
[2026-10-07 18:35:05] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:35:05] testing.INFO: New stock: 7  
[2026-10-07 18:35:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac674b8ed857"} 
[2026-10-07 18:35:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac674b93db42","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:05] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:35:05] testing.INFO: Old stock: 10  
[2026-10-07 18:35:05] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:35:05] testing.INFO: New stock: 8  
[2026-10-07 18:35:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac674b93db42"} 
[2026-10-07 18:35:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac674b963b33","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:05] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac674b984bab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac674b9c2c20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac674b9dbb87","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac674ba067a4","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:35:06] testing.INFO: Old stock: 10  
[2026-10-07 18:35:06] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:35:06] testing.INFO: New stock: 8  
[2026-10-07 18:35:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:35:06] testing.INFO: Old stock: 10  
[2026-10-07 18:35:06] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:35:06] testing.INFO: New stock: 9  
[2026-10-07 18:35:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T16:35:00+02:00"}} 
[2026-10-07 18:35:06] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 18:35:06] testing.INFO: Old stock: 10  
[2026-10-07 18:35:06] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:35:06] testing.INFO: New stock: 9  
[2026-10-07 18:35:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T18:35:06+02:00"}} 
[2026-10-07 18:35:06] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 18:35:06] testing.INFO: Old stock: 10  
[2026-10-07 18:35:06] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:35:06] testing.INFO: New stock: 9  
[2026-10-07 18:35:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:35:06+02:00"}} 
[2026-10-07 18:35:06] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 18:35:06] testing.INFO: Old stock: 1  
[2026-10-07 18:35:06] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:35:06] testing.INFO: New stock: 0  
[2026-10-07 18:35:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:35:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:35:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:35:07+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 18:35:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:35:07+02:00"}} 
[2026-10-07 18:35:07] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 18:35:07] testing.INFO: Old stock: 10  
[2026-10-07 18:35:07] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:35:07] testing.INFO: New stock: 9  
[2026-10-07 18:35:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:53:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac67923c876a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:53:55] testing.INFO: Old stock: 10  
[2026-10-07 18:53:55] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:53:55] testing.INFO: New stock: 7  
[2026-10-07 18:53:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac67923c876a"} 
[2026-10-07 18:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac679241082d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:56] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:53:56] testing.INFO: Old stock: 10  
[2026-10-07 18:53:56] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:53:56] testing.INFO: New stock: 8  
[2026-10-07 18:53:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac679241082d"} 
[2026-10-07 18:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac67924388e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:56] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac6792459525","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac6792478202","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac6792497449","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac67924ba98d","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:57] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:53:57] testing.INFO: Old stock: 10  
[2026-10-07 18:53:57] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:53:57] testing.INFO: New stock: 8  
[2026-10-07 18:53:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:57] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:53:57] testing.INFO: Old stock: 10  
[2026-10-07 18:53:57] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:53:57] testing.INFO: New stock: 9  
[2026-10-07 18:53:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T16:53:00+02:00"}} 
[2026-10-07 18:53:57] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 18:53:57] testing.INFO: Old stock: 10  
[2026-10-07 18:53:57] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:53:57] testing.INFO: New stock: 9  
[2026-10-07 18:53:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T18:53:57+02:00"}} 
[2026-10-07 18:53:57] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 18:53:57] testing.INFO: Old stock: 10  
[2026-10-07 18:53:57] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:53:57] testing.INFO: New stock: 9  
[2026-10-07 18:53:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:53:57+02:00"}} 
[2026-10-07 18:53:57] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 18:53:57] testing.INFO: Old stock: 1  
[2026-10-07 18:53:57] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:53:57] testing.INFO: New stock: 0  
[2026-10-07 18:53:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:53:57+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 18:53:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:53:58+02:00"}} 
[2026-10-07 18:53:58] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 18:53:58] testing.INFO: Old stock: 10  
[2026-10-07 18:53:58] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:53:58] testing.INFO: New stock: 9  
[2026-10-07 18:53:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:57:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac67a1572f8b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:57] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:57:57] testing.INFO: Old stock: 10  
[2026-10-07 18:57:57] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:57:57] testing.INFO: New stock: 7  
[2026-10-07 18:57:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac67a1572f8b"} 
[2026-10-07 18:57:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ac67a15b4255","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:57] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:57:57] testing.INFO: Old stock: 10  
[2026-10-07 18:57:57] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:57:57] testing.INFO: New stock: 8  
[2026-10-07 18:57:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ac67a15b4255"} 
[2026-10-07 18:57:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac67a15daeeb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:58] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ac67a161a1b9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ac67a165c77a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac67a1681e2b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:57:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ac67a16b26fb","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-07 18:57:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:59] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-07 18:57:59] testing.INFO: Old stock: 10  
[2026-10-07 18:57:59] testing.INFO: Quantity deducted: 2  
[2026-10-07 18:57:59] testing.INFO: New stock: 8  
[2026-10-07 18:57:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:57:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:57:59] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-07 18:57:59] testing.INFO: Old stock: 10  
[2026-10-07 18:57:59] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:57:59] testing.INFO: New stock: 9  
[2026-10-07 18:57:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:57:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T16:57:00+02:00"}} 
[2026-10-07 18:57:59] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-07 18:57:59] testing.INFO: Old stock: 10  
[2026-10-07 18:57:59] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:57:59] testing.INFO: New stock: 9  
[2026-10-07 18:57:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:57:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T18:57:59+02:00"}} 
[2026-10-07 18:57:59] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-07 18:57:59] testing.INFO: Old stock: 10  
[2026-10-07 18:57:59] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:57:59] testing.INFO: New stock: 9  
[2026-10-07 18:57:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:57:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:57:59+02:00"}} 
[2026-10-07 18:57:59] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-07 18:57:59] testing.INFO: Old stock: 1  
[2026-10-07 18:57:59] testing.INFO: Quantity deducted: 3  
[2026-10-07 18:57:59] testing.INFO: New stock: 0  
[2026-10-07 18:57:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 18:58:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-07 18:58:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T18:58:00+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-07 18:58:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-07T15:58:00+02:00"}} 
[2026-10-07 18:58:00] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-07 18:58:00] testing.INFO: Old stock: 10  
[2026-10-07 18:58:00] testing.INFO: Quantity deducted: 1  
[2026-10-07 18:58:00] testing.INFO: New stock: 9  
[2026-10-07 18:58:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-07 20:17:17] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#7 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#8 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#63 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select category...')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select category...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#9 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#10 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#65 {main}
"} 
[2026-10-07 20:17:24] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#7 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#8 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#63 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select category...')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select category...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#9 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#10 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#65 {main}
"} 
[2026-10-07 20:17:29] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#7 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#8 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#63 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select category...')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select category...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#9 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#10 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#65 {main}
"} 
[2026-10-07 20:17:41] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#7 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#8 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#63 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select category...')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select category...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#9 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#10 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#65 {main}
"} 
[2026-10-07 20:17:59] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select category, SUM(amount) as total from `expenses` where `expense_date` between 2026-10-01 and 2026-10-31 group by `category` order by `total` desc) at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#7 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#8 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#9 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#17 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#63 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.expenses' doesn't exist at C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select category...')
#1 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select category...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select category...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select category...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select category...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3696): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3692): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(1082): Illuminate/Database/Query/Builder->pluck('total', 'category')
#9 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(202): Illuminate/Database/Eloquent/Builder->pluck('total', 'category')
#10 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Controllers/ProfitLossController.php(57): App/Http/Controllers/ProfitLossController->calculateMetrics(Object(Illuminate/Support/Carbon), Object(Illuminate/Support/Carbon))
#11 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/ProfitLossController->index(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/ProfitLossController), 'index')
#14 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25/app/Http/Middleware/CheckPermission.php(31): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_profit_los...')
#19 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#64 C:/Users/Solomon/Downloads/area25v1/area25/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#65 {main}
"} 
[2026-10-10 15:18:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca3b39ae437","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 15:18:49] testing.INFO: Old stock: 10  
[2026-10-10 15:18:49] testing.INFO: Quantity deducted: 3  
[2026-10-10 15:18:49] testing.INFO: New stock: 7  
[2026-10-10 15:18:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca3b39ae437"} 
[2026-10-10 15:18:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca3b39d343c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 15:18:49] testing.INFO: Old stock: 10  
[2026-10-10 15:18:49] testing.INFO: Quantity deducted: 2  
[2026-10-10 15:18:49] testing.INFO: New stock: 8  
[2026-10-10 15:18:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca3b39d343c"} 
[2026-10-10 15:18:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca3b39ee9a1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca3b3a1c73f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca3b3a30ccf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca3b3a45dfa","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca3b3a65ae6","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:50] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 15:18:50] testing.INFO: Old stock: 10  
[2026-10-10 15:18:50] testing.INFO: Quantity deducted: 2  
[2026-10-10 15:18:50] testing.INFO: New stock: 8  
[2026-10-10 15:18:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:50] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 15:18:50] testing.INFO: Old stock: 10  
[2026-10-10 15:18:50] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:18:50] testing.INFO: New stock: 9  
[2026-10-10 15:18:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:18:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:18:00+02:00"}} 
[2026-10-10 15:18:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 15:18:50] testing.INFO: Old stock: 10  
[2026-10-10 15:18:50] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:18:50] testing.INFO: New stock: 9  
[2026-10-10 15:18:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:18:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T15:18:51+02:00"}} 
[2026-10-10 15:18:51] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 15:18:51] testing.INFO: Old stock: 10  
[2026-10-10 15:18:51] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:18:51] testing.INFO: New stock: 9  
[2026-10-10 15:18:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:18:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:18:51+02:00"}} 
[2026-10-10 15:18:51] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 15:18:51] testing.INFO: Old stock: 1  
[2026-10-10 15:18:51] testing.INFO: Quantity deducted: 3  
[2026-10-10 15:18:51] testing.INFO: New stock: 0  
[2026-10-10 15:18:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:18:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:18:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:18:51+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 15:18:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T12:18:51+02:00"}} 
[2026-10-10 15:18:51] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 15:18:51] testing.INFO: Old stock: 10  
[2026-10-10 15:18:51] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:18:51] testing.INFO: New stock: 9  
[2026-10-10 15:18:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca41cb43fff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 15:46:51] testing.INFO: Old stock: 10  
[2026-10-10 15:46:51] testing.INFO: Quantity deducted: 3  
[2026-10-10 15:46:51] testing.INFO: New stock: 7  
[2026-10-10 15:46:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cb43fff"} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca41cb5c698","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 15:46:51] testing.INFO: Old stock: 10  
[2026-10-10 15:46:51] testing.INFO: Quantity deducted: 2  
[2026-10-10 15:46:51] testing.INFO: New stock: 8  
[2026-10-10 15:46:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cb5c698"} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca41cb6ed0b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca41cb7c7b9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca41cb89123","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca41cb975bc","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca41cba79da","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 15:46:51] testing.INFO: Old stock: 10  
[2026-10-10 15:46:51] testing.INFO: Quantity deducted: 2  
[2026-10-10 15:46:51] testing.INFO: New stock: 8  
[2026-10-10 15:46:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:51] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 15:46:51] testing.INFO: Old stock: 10  
[2026-10-10 15:46:51] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:46:51] testing.INFO: New stock: 9  
[2026-10-10 15:46:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:46:00+02:00"}} 
[2026-10-10 15:46:52] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 15:46:52] testing.INFO: Old stock: 10  
[2026-10-10 15:46:52] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:46:52] testing.INFO: New stock: 9  
[2026-10-10 15:46:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T15:46:52+02:00"}} 
[2026-10-10 15:46:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 15:46:52] testing.INFO: Old stock: 10  
[2026-10-10 15:46:52] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:46:52] testing.INFO: New stock: 9  
[2026-10-10 15:46:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:46:52+02:00"}} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:46:52+02:00"}} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:46:52+02:00"}} 
[2026-10-10 15:46:52] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 15:46:52] testing.INFO: Old stock: 5  
[2026-10-10 15:46:52] testing.INFO: Quantity deducted: 3  
[2026-10-10 15:46:52] testing.INFO: New stock: 2  
[2026-10-10 15:46:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:46:52+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 15:46:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T12:46:52+02:00"}} 
[2026-10-10 15:46:52] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-10 15:46:52] testing.INFO: Old stock: 10  
[2026-10-10 15:46:52] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:46:52] testing.INFO: New stock: 9  
[2026-10-10 15:46:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:46:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca41ced07d1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:54] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 15:46:54] testing.INFO: Old stock: 10  
[2026-10-10 15:46:54] testing.INFO: Quantity deducted: 4  
[2026-10-10 15:46:54] testing.INFO: New stock: 6  
[2026-10-10 15:46:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41ced07d1"} 
[2026-10-10 15:46:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41cee4d6d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:54] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 15:46:54] testing.INFO: Old stock: 10  
[2026-10-10 15:46:54] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:46:54] testing.INFO: New stock: 5  
[2026-10-10 15:46:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cee4d6d"} 
[2026-10-10 15:46:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca41cf06243","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:55] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 15:46:55] testing.INFO: Old stock: 10  
[2026-10-10 15:46:55] testing.INFO: Quantity deducted: 4  
[2026-10-10 15:46:55] testing.INFO: New stock: 6  
[2026-10-10 15:46:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cf06243"} 
[2026-10-10 15:46:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca41cf23c41","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:55] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 15:46:55] testing.INFO: Old stock: 5  
[2026-10-10 15:46:55] testing.INFO: Quantity deducted: 4  
[2026-10-10 15:46:55] testing.INFO: New stock: 1  
[2026-10-10 15:46:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cf23c41"} 
[2026-10-10 15:46:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41cf3a6ec","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:55] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-10 15:46:55] testing.INFO: Old stock: 10  
[2026-10-10 15:46:55] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:46:55] testing.INFO: New stock: 5  
[2026-10-10 15:46:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cf3a6ec"} 
[2026-10-10 15:46:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41cf584c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:55] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 15:46:55] testing.INFO: Old stock: 12  
[2026-10-10 15:46:55] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:46:55] testing.INFO: New stock: 7  
[2026-10-10 15:46:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cf584c5"} 
[2026-10-10 15:46:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41cf6a41f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:46:55] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-10 15:46:55] testing.INFO: Old stock: 12  
[2026-10-10 15:46:55] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:46:55] testing.INFO: New stock: 7  
[2026-10-10 15:46:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41cf6a41f"} 
[2026-10-10 15:47:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca41f6c48b0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 15:47:34] testing.INFO: Old stock: 10  
[2026-10-10 15:47:34] testing.INFO: Quantity deducted: 3  
[2026-10-10 15:47:34] testing.INFO: New stock: 7  
[2026-10-10 15:47:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41f6c48b0"} 
[2026-10-10 15:47:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca41f6dd053","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 15:47:34] testing.INFO: Old stock: 10  
[2026-10-10 15:47:34] testing.INFO: Quantity deducted: 2  
[2026-10-10 15:47:34] testing.INFO: New stock: 8  
[2026-10-10 15:47:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41f6dd053"} 
[2026-10-10 15:47:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca41f6f0b76","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca41f70ae81","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca41f71a476","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca41f728748","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca41f73e9b9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 15:47:35] testing.INFO: Old stock: 10  
[2026-10-10 15:47:35] testing.INFO: Quantity deducted: 2  
[2026-10-10 15:47:35] testing.INFO: New stock: 8  
[2026-10-10 15:47:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 15:47:35] testing.INFO: Old stock: 10  
[2026-10-10 15:47:35] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:47:35] testing.INFO: New stock: 9  
[2026-10-10 15:47:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:47:00+02:00"}} 
[2026-10-10 15:47:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 15:47:35] testing.INFO: Old stock: 10  
[2026-10-10 15:47:35] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:47:35] testing.INFO: New stock: 9  
[2026-10-10 15:47:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T15:47:35+02:00"}} 
[2026-10-10 15:47:35] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 15:47:35] testing.INFO: Old stock: 10  
[2026-10-10 15:47:35] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:47:35] testing.INFO: New stock: 9  
[2026-10-10 15:47:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:47:35+02:00"}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:47:35+02:00"}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:47:35+02:00"}} 
[2026-10-10 15:47:35] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 15:47:35] testing.INFO: Old stock: 5  
[2026-10-10 15:47:35] testing.INFO: Quantity deducted: 3  
[2026-10-10 15:47:35] testing.INFO: New stock: 2  
[2026-10-10 15:47:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T15:47:35+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 15:47:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T12:47:36+02:00"}} 
[2026-10-10 15:47:36] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-10 15:47:36] testing.INFO: Old stock: 10  
[2026-10-10 15:47:36] testing.INFO: Quantity deducted: 1  
[2026-10-10 15:47:36] testing.INFO: New stock: 9  
[2026-10-10 15:47:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 15:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca41fa67c7d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 15:47:38] testing.INFO: Old stock: 10  
[2026-10-10 15:47:38] testing.INFO: Quantity deducted: 4  
[2026-10-10 15:47:38] testing.INFO: New stock: 6  
[2026-10-10 15:47:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41fa67c7d"} 
[2026-10-10 15:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41fa7c241","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 15:47:38] testing.INFO: Old stock: 10  
[2026-10-10 15:47:38] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:47:38] testing.INFO: New stock: 5  
[2026-10-10 15:47:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41fa7c241"} 
[2026-10-10 15:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca41fa917c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:38] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 15:47:38] testing.INFO: Old stock: 10  
[2026-10-10 15:47:38] testing.INFO: Quantity deducted: 4  
[2026-10-10 15:47:38] testing.INFO: New stock: 6  
[2026-10-10 15:47:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41fa917c8"} 
[2026-10-10 15:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca41fab4405","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:38] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 15:47:38] testing.INFO: Old stock: 5  
[2026-10-10 15:47:38] testing.INFO: Quantity deducted: 4  
[2026-10-10 15:47:38] testing.INFO: New stock: 1  
[2026-10-10 15:47:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41fab4405"} 
[2026-10-10 15:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41facabca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:38] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-10 15:47:38] testing.INFO: Old stock: 10  
[2026-10-10 15:47:38] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:47:38] testing.INFO: New stock: 5  
[2026-10-10 15:47:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41facabca"} 
[2026-10-10 15:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41fae9edf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:38] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 15:47:38] testing.INFO: Old stock: 12  
[2026-10-10 15:47:38] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:47:38] testing.INFO: New stock: 7  
[2026-10-10 15:47:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41fae9edf"} 
[2026-10-10 15:47:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca41fb0713a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 15:47:39] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-10 15:47:39] testing.INFO: Old stock: 12  
[2026-10-10 15:47:39] testing.INFO: Quantity deducted: 5  
[2026-10-10 15:47:39] testing.INFO: New stock: 7  
[2026-10-10 15:47:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca41fb0713a"} 
[2026-10-10 16:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca45c3a2f0e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:03:47] testing.INFO: Old stock: 10  
[2026-10-10 16:03:47] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:03:47] testing.INFO: New stock: 7  
[2026-10-10 16:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c3a2f0e"} 
[2026-10-10 16:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca45c3b64a1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:03:47] testing.INFO: Old stock: 10  
[2026-10-10 16:03:47] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:03:47] testing.INFO: New stock: 8  
[2026-10-10 16:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c3b64a1"} 
[2026-10-10 16:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca45c3c7929","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:47] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca45c3d4fac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca45c3e1f7c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca45c3ee3b9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca45c406d2b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:03:48] testing.INFO: Old stock: 10  
[2026-10-10 16:03:48] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:03:48] testing.INFO: New stock: 8  
[2026-10-10 16:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:48] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:03:48] testing.INFO: Old stock: 10  
[2026-10-10 16:03:48] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:03:48] testing.INFO: New stock: 9  
[2026-10-10 16:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T14:03:00+02:00"}} 
[2026-10-10 16:03:48] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:03:48] testing.INFO: Old stock: 10  
[2026-10-10 16:03:48] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:03:48] testing.INFO: New stock: 9  
[2026-10-10 16:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T16:03:48+02:00"}} 
[2026-10-10 16:03:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:03:48] testing.INFO: Old stock: 10  
[2026-10-10 16:03:48] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:03:48] testing.INFO: New stock: 9  
[2026-10-10 16:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:03:48+02:00"}} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:03:48+02:00"}} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:03:48+02:00"}} 
[2026-10-10 16:03:48] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:03:48] testing.INFO: Old stock: 5  
[2026-10-10 16:03:48] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:03:48] testing.INFO: New stock: 2  
[2026-10-10 16:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:03:48+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 16:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:03:48+02:00"}} 
[2026-10-10 16:03:48] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-10 16:03:48] testing.INFO: Old stock: 10  
[2026-10-10 16:03:48] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:03:48] testing.INFO: New stock: 9  
[2026-10-10 16:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca45c70a004","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:03:51] testing.INFO: Old stock: 10  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:03:51] testing.INFO: New stock: 6  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c70a004"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45c71efaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:03:51] testing.INFO: Old stock: 10  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:03:51] testing.INFO: New stock: 5  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c71efaa"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca45c734158","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 16:03:51] testing.INFO: Old stock: 10  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:03:51] testing.INFO: New stock: 6  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c734158"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca45c751637","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:03:51] testing.INFO: Old stock: 5  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:03:51] testing.INFO: New stock: 1  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c751637"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45c764fe3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-10 16:03:51] testing.INFO: Old stock: 10  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:03:51] testing.INFO: New stock: 5  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c764fe3"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45c781e43","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 16:03:51] testing.INFO: Old stock: 12  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:03:51] testing.INFO: New stock: 7  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c781e43"} 
[2026-10-10 16:03:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45c79381d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:03:51] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-10 16:03:51] testing.INFO: Old stock: 12  
[2026-10-10 16:03:51] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:03:51] testing.INFO: New stock: 7  
[2026-10-10 16:03:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45c79381d"} 
[2026-10-10 16:04:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca45debb642","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:04:14] testing.INFO: Old stock: 10  
[2026-10-10 16:04:14] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:04:14] testing.INFO: New stock: 7  
[2026-10-10 16:04:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45debb642"} 
[2026-10-10 16:04:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca45decca45","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:04:14] testing.INFO: Old stock: 10  
[2026-10-10 16:04:14] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:04:14] testing.INFO: New stock: 8  
[2026-10-10 16:04:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45decca45"} 
[2026-10-10 16:04:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca45deddb78","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:14] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca45dee9334","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca45df016e1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca45df0e41e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca45df1b577","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:04:15] testing.INFO: Old stock: 10  
[2026-10-10 16:04:15] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:04:15] testing.INFO: New stock: 8  
[2026-10-10 16:04:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:04:15] testing.INFO: Old stock: 10  
[2026-10-10 16:04:15] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:04:15] testing.INFO: New stock: 9  
[2026-10-10 16:04:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T14:04:00+02:00"}} 
[2026-10-10 16:04:15] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:04:15] testing.INFO: Old stock: 10  
[2026-10-10 16:04:15] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:04:15] testing.INFO: New stock: 9  
[2026-10-10 16:04:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T16:04:15+02:00"}} 
[2026-10-10 16:04:15] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:04:15] testing.INFO: Old stock: 10  
[2026-10-10 16:04:15] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:04:15] testing.INFO: New stock: 9  
[2026-10-10 16:04:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:04:15+02:00"}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:04:15+02:00"}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:04:15+02:00"}} 
[2026-10-10 16:04:15] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:04:15] testing.INFO: Old stock: 5  
[2026-10-10 16:04:15] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:04:15] testing.INFO: New stock: 2  
[2026-10-10 16:04:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:04:15+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 16:04:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:04:15+02:00"}} 
[2026-10-10 16:04:15] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-10 16:04:15] testing.INFO: Old stock: 10  
[2026-10-10 16:04:15] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:04:15] testing.INFO: New stock: 9  
[2026-10-10 16:04:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca45e205e83","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:04:18] testing.INFO: Old stock: 10  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:04:18] testing.INFO: New stock: 6  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e205e83"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45e2185c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:04:18] testing.INFO: Old stock: 10  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:04:18] testing.INFO: New stock: 5  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e2185c5"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca45e22c457","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 16:04:18] testing.INFO: Old stock: 10  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:04:18] testing.INFO: New stock: 6  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e22c457"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca45e249ebf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:04:18] testing.INFO: Old stock: 5  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:04:18] testing.INFO: New stock: 1  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e249ebf"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45e25dcf3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-10 16:04:18] testing.INFO: Old stock: 10  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:04:18] testing.INFO: New stock: 5  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e25dcf3"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45e279f2f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 16:04:18] testing.INFO: Old stock: 12  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:04:18] testing.INFO: New stock: 7  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e279f2f"} 
[2026-10-10 16:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca45e28aabe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:04:18] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-10 16:04:18] testing.INFO: Old stock: 12  
[2026-10-10 16:04:18] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:04:18] testing.INFO: New stock: 7  
[2026-10-10 16:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca45e28aabe"} 
[2026-10-10 16:12:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca47d7d85c3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:39] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:12:39] testing.INFO: Old stock: 10  
[2026-10-10 16:12:39] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:12:39] testing.INFO: New stock: 7  
[2026-10-10 16:12:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47d7d85c3"} 
[2026-10-10 16:12:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca47d7ec407","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:39] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:12:39] testing.INFO: Old stock: 10  
[2026-10-10 16:12:39] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:12:39] testing.INFO: New stock: 8  
[2026-10-10 16:12:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47d7ec407"} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca47d8096c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca47d816b07","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca47d823661","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca47d83077c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca47d83ce60","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:12:40] testing.INFO: Old stock: 10  
[2026-10-10 16:12:40] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:12:40] testing.INFO: New stock: 8  
[2026-10-10 16:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:12:40] testing.INFO: Old stock: 10  
[2026-10-10 16:12:40] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:12:40] testing.INFO: New stock: 9  
[2026-10-10 16:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T14:12:00+02:00"}} 
[2026-10-10 16:12:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:12:40] testing.INFO: Old stock: 10  
[2026-10-10 16:12:40] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:12:40] testing.INFO: New stock: 9  
[2026-10-10 16:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T16:12:40+02:00"}} 
[2026-10-10 16:12:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:12:40] testing.INFO: Old stock: 10  
[2026-10-10 16:12:40] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:12:40] testing.INFO: New stock: 9  
[2026-10-10 16:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:12:40+02:00"}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:12:40+02:00"}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:12:40+02:00"}} 
[2026-10-10 16:12:40] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:12:40] testing.INFO: Old stock: 5  
[2026-10-10 16:12:40] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:12:40] testing.INFO: New stock: 2  
[2026-10-10 16:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:12:40+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 16:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:12:40+02:00"}} 
[2026-10-10 16:12:41] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-10 16:12:41] testing.INFO: Old stock: 10  
[2026-10-10 16:12:41] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:12:41] testing.INFO: New stock: 9  
[2026-10-10 16:12:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:12:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca47db6cb50","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:12:43] testing.INFO: Old stock: 10  
[2026-10-10 16:12:43] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:12:43] testing.INFO: New stock: 6  
[2026-10-10 16:12:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47db6cb50"} 
[2026-10-10 16:12:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca47db8143a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:43] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:12:43] testing.INFO: Old stock: 10  
[2026-10-10 16:12:43] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:12:43] testing.INFO: New stock: 5  
[2026-10-10 16:12:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47db8143a"} 
[2026-10-10 16:12:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca47db9804f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:43] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 16:12:43] testing.INFO: Old stock: 10  
[2026-10-10 16:12:43] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:12:43] testing.INFO: New stock: 6  
[2026-10-10 16:12:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47db9804f"} 
[2026-10-10 16:12:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca47dbb66c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:43] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:12:43] testing.INFO: Old stock: 5  
[2026-10-10 16:12:43] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:12:43] testing.INFO: New stock: 1  
[2026-10-10 16:12:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47dbb66c8"} 
[2026-10-10 16:12:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca47dbcb786","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:43] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-10 16:12:43] testing.INFO: Old stock: 10  
[2026-10-10 16:12:43] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:12:43] testing.INFO: New stock: 5  
[2026-10-10 16:12:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47dbcb786"} 
[2026-10-10 16:12:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca47dbe8ed2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:43] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 16:12:43] testing.INFO: Old stock: 12  
[2026-10-10 16:12:43] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:12:43] testing.INFO: New stock: 7  
[2026-10-10 16:12:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47dbe8ed2"} 
[2026-10-10 16:12:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca47dc0660b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:12:44] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-10 16:12:44] testing.INFO: Old stock: 12  
[2026-10-10 16:12:44] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:12:44] testing.INFO: New stock: 7  
[2026-10-10 16:12:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca47dc0660b"} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca4b3f40dc9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:27:11] testing.INFO: Old stock: 10  
[2026-10-10 16:27:11] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:27:11] testing.INFO: New stock: 7  
[2026-10-10 16:27:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b3f40dc9"} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6aca4b3f596ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:11] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:27:11] testing.INFO: Old stock: 10  
[2026-10-10 16:27:11] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:11] testing.INFO: New stock: 8  
[2026-10-10 16:27:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b3f596ea"} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca4b3f703fb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6aca4b3f80a3c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6aca4b3f91b8e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b3fa155e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b3fb2470","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-10 16:27:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b3fde875","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:27:11] testing.INFO: Old stock: 10  
[2026-10-10 16:27:11] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:11] testing.INFO: New stock: 8  
[2026-10-10 16:27:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b3fde875"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b401ba07","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:27:12] testing.INFO: Old stock: 10  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:12] testing.INFO: New stock: 8  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b401ba07"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b403e593","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:27:12] testing.INFO: Old stock: 10  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:12] testing.INFO: New stock: 8  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b403e593"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b40581ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:27:12] testing.INFO: Old stock: 3  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:12] testing.INFO: New stock: 1  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b40581ad"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6aca4b408dce5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-10 16:27:12] testing.INFO: Old stock: 10  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:12] testing.INFO: New stock: 8  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b408dce5"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-10 16:27:12] testing.INFO: Old stock: 10  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 2  
[2026-10-10 16:27:12] testing.INFO: New stock: 8  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-10 16:27:12] testing.INFO: Old stock: 10  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:27:12] testing.INFO: New stock: 9  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T14:27:00+02:00"}} 
[2026-10-10 16:27:12] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:27:12] testing.INFO: Old stock: 10  
[2026-10-10 16:27:12] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:27:12] testing.INFO: New stock: 9  
[2026-10-10 16:27:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:27:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-13T16:27:12+02:00"}} 
[2026-10-10 16:27:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:27:13] testing.INFO: Old stock: 10  
[2026-10-10 16:27:13] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:27:13] testing.INFO: New stock: 9  
[2026-10-10 16:27:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:27:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:27:13+02:00"}} 
[2026-10-10 16:27:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:27:13+02:00"}} 
[2026-10-10 16:27:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:27:13+02:00"}} 
[2026-10-10 16:27:13] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:27:13] testing.INFO: Old stock: 5  
[2026-10-10 16:27:13] testing.INFO: Quantity deducted: 3  
[2026-10-10 16:27:13] testing.INFO: New stock: 2  
[2026-10-10 16:27:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:27:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T16:27:13+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-10 16:27:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-10T13:27:13+02:00"}} 
[2026-10-10 16:27:13] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-10 16:27:13] testing.INFO: Old stock: 10  
[2026-10-10 16:27:13] testing.INFO: Quantity deducted: 1  
[2026-10-10 16:27:13] testing.INFO: New stock: 9  
[2026-10-10 16:27:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-10 16:27:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca4b4778acc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:19] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-10 16:27:19] testing.INFO: Old stock: 10  
[2026-10-10 16:27:19] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:27:19] testing.INFO: New stock: 6  
[2026-10-10 16:27:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b4778acc"} 
[2026-10-10 16:27:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca4b47a119a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:19] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-10 16:27:19] testing.INFO: Old stock: 10  
[2026-10-10 16:27:19] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:27:19] testing.INFO: New stock: 5  
[2026-10-10 16:27:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b47a119a"} 
[2026-10-10 16:27:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca4b47cc3ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:19] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-10 16:27:19] testing.INFO: Old stock: 10  
[2026-10-10 16:27:19] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:27:19] testing.INFO: New stock: 6  
[2026-10-10 16:27:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b47cc3ef"} 
[2026-10-10 16:27:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6aca4b481642c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:20] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-10 16:27:20] testing.INFO: Old stock: 5  
[2026-10-10 16:27:20] testing.INFO: Quantity deducted: 4  
[2026-10-10 16:27:20] testing.INFO: New stock: 1  
[2026-10-10 16:27:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b481642c"} 
[2026-10-10 16:27:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca4b483f620","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:20] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-10 16:27:20] testing.INFO: Old stock: 10  
[2026-10-10 16:27:20] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:27:20] testing.INFO: New stock: 5  
[2026-10-10 16:27:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b483f620"} 
[2026-10-10 16:27:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca4b4878f73","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:20] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-10 16:27:20] testing.INFO: Old stock: 12  
[2026-10-10 16:27:20] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:27:20] testing.INFO: New stock: 7  
[2026-10-10 16:27:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b4878f73"} 
[2026-10-10 16:27:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6aca4b489b0f7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-10 16:27:20] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-10 16:27:20] testing.INFO: Old stock: 12  
[2026-10-10 16:27:20] testing.INFO: Quantity deducted: 5  
[2026-10-10 16:27:20] testing.INFO: New stock: 7  
[2026-10-10 16:27:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6aca4b489b0f7"} 
[2026-10-10 16:42:07] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1791643326814563","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":13,"product_id":13,"name":"Cetirizine 10mg Tablets","sku":"PRD-00013","price":"2800.00","selling_price":"2800.00","purchase_price":"1500.00","quantity":48,"subtotal":134400,"product":{"id":13,"tenant_id":1,"name":"Cetirizine 10mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":5,"brand_id":4,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2800.00","current_stock":48,"stock":"55.00","product_type":"Single","tax":null,"sku":"PRD-00013","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2029-04-07","last_purchase_date":"2026-10-07","created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-08T18:35:19.000000Z","brand":{"id":4,"tenant_id":1,"name":"Cipla","note":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"category":{"id":5,"tenant_id":1,"name":"Cough & Cold","category_code":null,"description":null,"created_at":"2026-10-07T04:31:14.000000Z","updated_at":"2026-10-07T04:31:14.000000Z"},"_serverStock":48}}],"payment_method":"cash"}} 
[2026-10-10 16:42:07] local.INFO: Stock deduction for product: Cetirizine 10mg Tablets  
[2026-10-10 16:42:07] local.INFO: Old stock: 48.00  
[2026-10-10 16:42:07] local.INFO: Quantity deducted: 48  
[2026-10-10 16:42:07] local.INFO: New stock: 0  
[2026-10-10 16:42:07] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1791643326814563"} 
[2026-10-20 19:59:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7ac0e2e2fc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:42] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 19:59:42] testing.INFO: Old stock: 10  
[2026-10-20 19:59:42] testing.INFO: Quantity deducted: 3  
[2026-10-20 19:59:42] testing.INFO: New stock: 7  
[2026-10-20 19:59:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac0e2e2fc"} 
[2026-10-20 19:59:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7ac0ec1ece","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:42] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 19:59:42] testing.INFO: Old stock: 10  
[2026-10-20 19:59:42] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:42] testing.INFO: New stock: 8  
[2026-10-20 19:59:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac0ec1ece"} 
[2026-10-20 19:59:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7ac0f3a42c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:43] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7ac0f8ff0b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7ac0fe039e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac103ac21","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 19:59:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac1099cab","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 19:59:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac118addf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:45] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 19:59:45] testing.INFO: Old stock: 10  
[2026-10-20 19:59:45] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:45] testing.INFO: New stock: 8  
[2026-10-20 19:59:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac118addf"} 
[2026-10-20 19:59:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac127f06c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:46] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 19:59:46] testing.INFO: Old stock: 10  
[2026-10-20 19:59:46] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:46] testing.INFO: New stock: 8  
[2026-10-20 19:59:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac127f06c"} 
[2026-10-20 19:59:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac132a16f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 19:59:47] testing.INFO: Old stock: 10  
[2026-10-20 19:59:47] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:47] testing.INFO: New stock: 8  
[2026-10-20 19:59:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac132a16f"} 
[2026-10-20 19:59:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac13b6134","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:47] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 19:59:47] testing.INFO: Old stock: 3  
[2026-10-20 19:59:47] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:47] testing.INFO: New stock: 1  
[2026-10-20 19:59:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac13b6134"} 
[2026-10-20 19:59:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7ac14c1f6d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:48] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 19:59:48] testing.INFO: Old stock: 10  
[2026-10-20 19:59:48] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:48] testing.INFO: New stock: 8  
[2026-10-20 19:59:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac14c1f6d"} 
[2026-10-20 19:59:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 19:59:49] testing.INFO: Old stock: 10  
[2026-10-20 19:59:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 19:59:49] testing.INFO: New stock: 8  
[2026-10-20 19:59:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 19:59:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 19:59:49] testing.INFO: Old stock: 10  
[2026-10-20 19:59:49] testing.INFO: Quantity deducted: 1  
[2026-10-20 19:59:49] testing.INFO: New stock: 9  
[2026-10-20 19:59:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 19:59:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:59:00+02:00"}} 
[2026-10-20 19:59:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 19:59:50] testing.INFO: Old stock: 10  
[2026-10-20 19:59:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 19:59:50] testing.INFO: New stock: 9  
[2026-10-20 19:59:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 19:59:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T19:59:50+02:00"}} 
[2026-10-20 19:59:50] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 19:59:50] testing.INFO: Old stock: 10  
[2026-10-20 19:59:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 19:59:50] testing.INFO: New stock: 9  
[2026-10-20 19:59:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 19:59:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:59:51+02:00"}} 
[2026-10-20 19:59:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:59:51+02:00"}} 
[2026-10-20 19:59:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:59:51+02:00"}} 
[2026-10-20 19:59:52] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 19:59:52] testing.INFO: Old stock: 5  
[2026-10-20 19:59:52] testing.INFO: Quantity deducted: 3  
[2026-10-20 19:59:52] testing.INFO: New stock: 2  
[2026-10-20 19:59:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 19:59:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 19:59:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:59:52+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 19:59:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T16:59:53+02:00"}} 
[2026-10-20 19:59:53] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 19:59:53] testing.INFO: Old stock: 10  
[2026-10-20 19:59:53] testing.INFO: Quantity deducted: 1  
[2026-10-20 19:59:53] testing.INFO: New stock: 9  
[2026-10-20 19:59:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:00:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7ac2b15f09","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:11] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:00:11] testing.INFO: Old stock: 10  
[2026-10-20 20:00:11] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:00:11] testing.INFO: New stock: 6  
[2026-10-20 20:00:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac2b15f09"} 
[2026-10-20 20:00:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7ac2bb89e6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:00:11] testing.INFO: Old stock: 10  
[2026-10-20 20:00:11] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:00:11] testing.INFO: New stock: 5  
[2026-10-20 20:00:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac2bb89e6"} 
[2026-10-20 20:00:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7ac2c38fc8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:12] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:00:12] testing.INFO: Old stock: 10  
[2026-10-20 20:00:12] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:00:12] testing.INFO: New stock: 6  
[2026-10-20 20:00:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac2c38fc8"} 
[2026-10-20 20:00:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7ac2d417ed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:13] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:00:13] testing.INFO: Old stock: 5  
[2026-10-20 20:00:13] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:00:13] testing.INFO: New stock: 1  
[2026-10-20 20:00:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac2d417ed"} 
[2026-10-20 20:00:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7ac2deb7ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:14] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:00:14] testing.INFO: Old stock: 10  
[2026-10-20 20:00:14] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:00:14] testing.INFO: New stock: 5  
[2026-10-20 20:00:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac2deb7ef"} 
[2026-10-20 20:00:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7ac2f43e03","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:15] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:00:15] testing.INFO: Old stock: 12  
[2026-10-20 20:00:15] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:00:15] testing.INFO: New stock: 7  
[2026-10-20 20:00:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac2f43e03"} 
[2026-10-20 20:00:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7ac301bfa9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:00:16] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:00:16] testing.INFO: Old stock: 12  
[2026-10-20 20:00:16] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:00:16] testing.INFO: New stock: 7  
[2026-10-20 20:00:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ac301bfa9"} 
[2026-10-20 20:02:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7acaa7fc8c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:02:18] testing.INFO: Old stock: 10  
[2026-10-20 20:02:18] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:02:18] testing.INFO: New stock: 7  
[2026-10-20 20:02:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acaa7fc8c"} 
[2026-10-20 20:02:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7acaa9b76f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:18] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:02:18] testing.INFO: Old stock: 10  
[2026-10-20 20:02:18] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:18] testing.INFO: New stock: 8  
[2026-10-20 20:02:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acaa9b76f"} 
[2026-10-20 20:02:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7acaab3de4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:18] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7acaac5e34","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7acaad69a9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acaae8c66","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:02:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acab077a3","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:02:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acab37b1f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:02:19] testing.INFO: Old stock: 10  
[2026-10-20 20:02:19] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:19] testing.INFO: New stock: 8  
[2026-10-20 20:02:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acab37b1f"} 
[2026-10-20 20:02:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acab5d036","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:02:19] testing.INFO: Old stock: 10  
[2026-10-20 20:02:19] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:19] testing.INFO: New stock: 8  
[2026-10-20 20:02:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acab5d036"} 
[2026-10-20 20:02:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acab81b26","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:19] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:02:19] testing.INFO: Old stock: 10  
[2026-10-20 20:02:19] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:19] testing.INFO: New stock: 8  
[2026-10-20 20:02:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acab81b26"} 
[2026-10-20 20:02:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acab9fc5e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:19] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:02:19] testing.INFO: Old stock: 3  
[2026-10-20 20:02:19] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:19] testing.INFO: New stock: 1  
[2026-10-20 20:02:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acab9fc5e"} 
[2026-10-20 20:02:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7acabdb29d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:19] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:02:19] testing.INFO: Old stock: 10  
[2026-10-20 20:02:19] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:19] testing.INFO: New stock: 8  
[2026-10-20 20:02:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acabdb29d"} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:20] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:02:20] testing.INFO: Old stock: 10  
[2026-10-20 20:02:20] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:02:20] testing.INFO: New stock: 8  
[2026-10-20 20:02:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:02:20] testing.INFO: Old stock: 10  
[2026-10-20 20:02:20] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:02:20] testing.INFO: New stock: 9  
[2026-10-20 20:02:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:02:00+02:00"}} 
[2026-10-20 20:02:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:02:20] testing.INFO: Old stock: 10  
[2026-10-20 20:02:20] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:02:20] testing.INFO: New stock: 9  
[2026-10-20 20:02:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:02:20+02:00"}} 
[2026-10-20 20:02:20] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:02:20] testing.INFO: Old stock: 10  
[2026-10-20 20:02:20] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:02:20] testing.INFO: New stock: 9  
[2026-10-20 20:02:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:02:20+02:00"}} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:02:20+02:00"}} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:02:20+02:00"}} 
[2026-10-20 20:02:20] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:02:20] testing.INFO: Old stock: 5  
[2026-10-20 20:02:20] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:02:20] testing.INFO: New stock: 2  
[2026-10-20 20:02:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:02:20+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:02:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:02:20+02:00"}} 
[2026-10-20 20:02:20] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:02:20] testing.INFO: Old stock: 10  
[2026-10-20 20:02:20] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:02:20] testing.INFO: New stock: 9  
[2026-10-20 20:02:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:02:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7acb07ded6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:02:24] testing.INFO: Old stock: 10  
[2026-10-20 20:02:24] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:02:24] testing.INFO: New stock: 6  
[2026-10-20 20:02:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb07ded6"} 
[2026-10-20 20:02:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7acb09b76c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:02:24] testing.INFO: Old stock: 10  
[2026-10-20 20:02:24] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:02:24] testing.INFO: New stock: 5  
[2026-10-20 20:02:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb09b76c"} 
[2026-10-20 20:02:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7acb0c0564","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:24] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:02:24] testing.INFO: Old stock: 10  
[2026-10-20 20:02:24] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:02:24] testing.INFO: New stock: 6  
[2026-10-20 20:02:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb0c0564"} 
[2026-10-20 20:02:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7acb0f18a5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:25] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:02:25] testing.INFO: Old stock: 5  
[2026-10-20 20:02:25] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:02:25] testing.INFO: New stock: 1  
[2026-10-20 20:02:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb0f18a5"} 
[2026-10-20 20:02:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7acb11fc14","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:25] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:02:25] testing.INFO: Old stock: 10  
[2026-10-20 20:02:25] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:02:25] testing.INFO: New stock: 5  
[2026-10-20 20:02:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb11fc14"} 
[2026-10-20 20:02:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7acb150504","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:25] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:02:25] testing.INFO: Old stock: 12  
[2026-10-20 20:02:25] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:02:25] testing.INFO: New stock: 7  
[2026-10-20 20:02:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb150504"} 
[2026-10-20 20:02:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7acb16abd3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:02:25] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:02:25] testing.INFO: Old stock: 12  
[2026-10-20 20:02:25] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:02:25] testing.INFO: New stock: 7  
[2026-10-20 20:02:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7acb16abd3"} 
[2026-10-20 20:10:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7ae847dce5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:12] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:10:12] testing.INFO: Old stock: 16  
[2026-10-20 20:10:12] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:10:12] testing.INFO: New stock: 10  
[2026-10-20 20:10:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7ae847dce5"} 
[2026-10-20 20:10:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7aea23b376","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:42] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:10:42] testing.INFO: Old stock: 10  
[2026-10-20 20:10:42] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:10:42] testing.INFO: New stock: 7  
[2026-10-20 20:10:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea23b376"} 
[2026-10-20 20:10:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7aea2c6ea9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:42] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:10:42] testing.INFO: Old stock: 10  
[2026-10-20 20:10:42] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:42] testing.INFO: New stock: 8  
[2026-10-20 20:10:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea2c6ea9"} 
[2026-10-20 20:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7aea3409a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:43] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7aea39b1e8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7aea3efe93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea4522bd","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea4be79f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:10:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea5aa54c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:45] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:10:45] testing.INFO: Old stock: 10  
[2026-10-20 20:10:45] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:45] testing.INFO: New stock: 8  
[2026-10-20 20:10:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea5aa54c"} 
[2026-10-20 20:10:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea6556a9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:46] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:10:46] testing.INFO: Old stock: 10  
[2026-10-20 20:10:46] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:46] testing.INFO: New stock: 8  
[2026-10-20 20:10:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea6556a9"} 
[2026-10-20 20:10:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea70350c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:10:47] testing.INFO: Old stock: 10  
[2026-10-20 20:10:47] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:47] testing.INFO: New stock: 8  
[2026-10-20 20:10:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea70350c"} 
[2026-10-20 20:10:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea787b00","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:47] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:10:47] testing.INFO: Old stock: 3  
[2026-10-20 20:10:47] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:47] testing.INFO: New stock: 1  
[2026-10-20 20:10:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea787b00"} 
[2026-10-20 20:10:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aea89e4a8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:48] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:10:48] testing.INFO: Old stock: 10  
[2026-10-20 20:10:48] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:48] testing.INFO: New stock: 8  
[2026-10-20 20:10:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aea89e4a8"} 
[2026-10-20 20:10:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:10:49] testing.INFO: Old stock: 10  
[2026-10-20 20:10:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:10:49] testing.INFO: New stock: 8  
[2026-10-20 20:10:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:10:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:10:49] testing.INFO: Old stock: 10  
[2026-10-20 20:10:49] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:10:49] testing.INFO: New stock: 9  
[2026-10-20 20:10:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:10:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:10:00+02:00"}} 
[2026-10-20 20:10:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:10:50] testing.INFO: Old stock: 10  
[2026-10-20 20:10:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:10:50] testing.INFO: New stock: 9  
[2026-10-20 20:10:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:10:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:10:50+02:00"}} 
[2026-10-20 20:10:50] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:10:50] testing.INFO: Old stock: 10  
[2026-10-20 20:10:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:10:50] testing.INFO: New stock: 9  
[2026-10-20 20:10:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:10:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:10:51+02:00"}} 
[2026-10-20 20:10:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:10:51+02:00"}} 
[2026-10-20 20:10:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:10:51+02:00"}} 
[2026-10-20 20:10:51] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:10:51] testing.INFO: Old stock: 5  
[2026-10-20 20:10:51] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:10:51] testing.INFO: New stock: 2  
[2026-10-20 20:10:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:10:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:10:52+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:10:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:10:53+02:00"}} 
[2026-10-20 20:10:53] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:10:53] testing.INFO: Old stock: 10  
[2026-10-20 20:10:53] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:10:53] testing.INFO: New stock: 9  
[2026-10-20 20:10:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:10:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7aeb3c36a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:10:59] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:10:59] testing.INFO: Old stock: 16  
[2026-10-20 20:10:59] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:10:59] testing.INFO: New stock: 10  
[2026-10-20 20:10:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aeb3c36a4"} 
[2026-10-20 20:11:03] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:11:03] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:11:03] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:11:03"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:11:03] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:11:03] testing.ERROR: Product Store - Exception Caught {"error_message":"Undefined array key \"supplier_id\"","error_code":0,"error_file":"C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php","error_line":196,"error_trace":"#0 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Bootstrap\\HandleExceptions.php(258): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'Undefined array...', 'C:\\\\Users\\\\Solomo...', 196)
#1 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php(196): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}(2, 'Undefined array...', 'C:\\\\Users\\\\Solomo...', 196)
#2 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Controller.php(54): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#3 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction('store', Array)
#4 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#5 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#6 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#7 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#8 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#9 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#10 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\CheckPermission.php(35): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#11 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\CheckPermission->handle(Object(Illuminate\\Http\\Request), Object(Closure), 'add_product')
#12 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#13 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#14 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#15 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#16 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#17 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#18 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#20 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#22 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#29 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#30 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#31 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#32 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#33 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#34 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#42 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#43 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#44 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#54 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(607): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#56 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(397): Illuminate\\Foundation\\Testing\\TestCase->call('POST', '/products', Array, Array, Array, Array)
#57 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\tests\\Feature\\ProductBatchTest.php(231): Illuminate\\Foundation\\Testing\\TestCase->post('/products', Array)
#58 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(1667): Tests\\Feature\\ProductBatchTest->test_new_product_opening_quantity_is_its_first_batch()
#59 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(519): PHPUnit\\Framework\\TestCase->runTest()
#60 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestRunner\\TestRunner.php(87): PHPUnit\\Framework\\TestCase->runBare()
#61 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(365): PHPUnit\\Framework\\TestRunner->run(Object(Tests\\Feature\\ProductBatchTest))
#62 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestCase->run()
#63 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#64 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#65 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\TestRunner.php(64): PHPUnit\\Framework\\TestSuite->run()
#66 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\Application.php(211): PHPUnit\\TextUI\\TestRunner->run(Object(PHPUnit\\TextUI\\Configuration\\Configuration), Object(PHPUnit\\Runner\\ResultCache\\DefaultResultCache), Object(PHPUnit\\Framework\\TestSuite))
#67 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\phpunit(104): PHPUnit\\TextUI\\Application->run(Array)
#68 {main}"} 
[2026-10-20 20:11:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7aec344928","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:15] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:11:15] testing.INFO: Old stock: 10  
[2026-10-20 20:11:15] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:11:15] testing.INFO: New stock: 6  
[2026-10-20 20:11:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec344928"} 
[2026-10-20 20:11:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7aec3d97ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:16] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:11:16] testing.INFO: Old stock: 10  
[2026-10-20 20:11:16] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:11:16] testing.INFO: New stock: 5  
[2026-10-20 20:11:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec3d97ad"} 
[2026-10-20 20:11:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7aec47eb02","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:16] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:11:16] testing.INFO: Old stock: 10  
[2026-10-20 20:11:16] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:11:16] testing.INFO: New stock: 6  
[2026-10-20 20:11:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec47eb02"} 
[2026-10-20 20:11:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7aec554714","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:17] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:11:17] testing.INFO: Old stock: 5  
[2026-10-20 20:11:17] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:11:17] testing.INFO: New stock: 1  
[2026-10-20 20:11:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec554714"} 
[2026-10-20 20:11:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7aec5d5548","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:17] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:11:17] testing.INFO: Old stock: 10  
[2026-10-20 20:11:17] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:11:17] testing.INFO: New stock: 5  
[2026-10-20 20:11:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec5d5548"} 
[2026-10-20 20:11:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7aec6ad030","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:18] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:11:18] testing.INFO: Old stock: 12  
[2026-10-20 20:11:18] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:11:18] testing.INFO: New stock: 7  
[2026-10-20 20:11:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec6ad030"} 
[2026-10-20 20:11:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7aec728624","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:11:19] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:11:19] testing.INFO: Old stock: 12  
[2026-10-20 20:11:19] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:11:19] testing.INFO: New stock: 7  
[2026-10-20 20:11:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aec728624"} 
[2026-10-20 20:11:29] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:11:29] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:11:29] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:11:29"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:11:29] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:11:29] testing.ERROR: Product Store - Exception Caught {"error_message":"Undefined array key \"supplier_id\"","error_code":0,"error_file":"C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php","error_line":196,"error_trace":"#0 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Bootstrap\\HandleExceptions.php(258): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'Undefined array...', 'C:\\\\Users\\\\Solomo...', 196)
#1 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php(196): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}(2, 'Undefined array...', 'C:\\\\Users\\\\Solomo...', 196)
#2 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Controller.php(54): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#3 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction('store', Array)
#4 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#5 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#6 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#7 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#8 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#9 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#10 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\CheckPermission.php(35): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#11 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\CheckPermission->handle(Object(Illuminate\\Http\\Request), Object(Closure), 'add_product')
#12 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#13 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#14 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#15 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#16 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#17 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#18 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#20 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#22 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#29 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#30 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#31 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#32 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#33 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#34 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#42 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#43 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#44 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#54 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(607): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#56 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(397): Illuminate\\Foundation\\Testing\\TestCase->call('POST', '/products', Array, Array, Array, Array)
#57 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\tests\\Feature\\ProductBatchTest.php(231): Illuminate\\Foundation\\Testing\\TestCase->post('/products', Array)
#58 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(1667): Tests\\Feature\\ProductBatchTest->test_new_product_opening_quantity_is_its_first_batch()
#59 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(519): PHPUnit\\Framework\\TestCase->runTest()
#60 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestRunner\\TestRunner.php(87): PHPUnit\\Framework\\TestCase->runBare()
#61 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(365): PHPUnit\\Framework\\TestRunner->run(Object(Tests\\Feature\\ProductBatchTest))
#62 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestCase->run()
#63 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#64 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#65 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\TestRunner.php(64): PHPUnit\\Framework\\TestSuite->run()
#66 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\Application.php(211): PHPUnit\\TextUI\\TestRunner->run(Object(PHPUnit\\TextUI\\Configuration\\Configuration), Object(PHPUnit\\Runner\\ResultCache\\DefaultResultCache), Object(PHPUnit\\Framework\\TestSuite))
#67 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\phpunit(104): PHPUnit\\TextUI\\Application->run(Array)
#68 {main}"} 
[2026-10-20 20:11:44] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:11:44] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:11:44] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:11:44"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:11:44] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:11:44] testing.ERROR: Product Store - Exception Caught {"error_message":"Undefined array key \"supplier_id\"","error_code":0,"error_file":"C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php","error_line":196,"error_trace":"#0 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Bootstrap\\HandleExceptions.php(258): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'Undefined array...', 'C:\\\\Users\\\\Solomo...', 196)
#1 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php(196): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->Illuminate\\Foundation\\Bootstrap\\{closure}(2, 'Undefined array...', 'C:\\\\Users\\\\Solomo...', 196)
#2 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Controller.php(54): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#3 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction('store', Array)
#4 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#5 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#6 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#7 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#8 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#9 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#10 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\CheckPermission.php(35): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#11 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\CheckPermission->handle(Object(Illuminate\\Http\\Request), Object(Closure), 'add_product')
#12 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#13 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#14 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#15 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#16 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#17 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#18 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#19 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#20 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#21 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#22 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#29 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#30 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#31 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#32 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#33 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#34 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#42 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#43 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#44 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#54 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(607): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#56 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(397): Illuminate\\Foundation\\Testing\\TestCase->call('POST', '/products', Array, Array, Array, Array)
#57 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\tests\\Feature\\ProductBatchTest.php(231): Illuminate\\Foundation\\Testing\\TestCase->post('/products', Array)
#58 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(1667): Tests\\Feature\\ProductBatchTest->test_new_product_opening_quantity_is_its_first_batch()
#59 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(519): PHPUnit\\Framework\\TestCase->runTest()
#60 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestRunner\\TestRunner.php(87): PHPUnit\\Framework\\TestCase->runBare()
#61 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(365): PHPUnit\\Framework\\TestRunner->run(Object(Tests\\Feature\\ProductBatchTest))
#62 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestCase->run()
#63 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#64 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#65 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\TestRunner.php(64): PHPUnit\\Framework\\TestSuite->run()
#66 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\Application.php(211): PHPUnit\\TextUI\\TestRunner->run(Object(PHPUnit\\TextUI\\Configuration\\Configuration), Object(PHPUnit\\Runner\\ResultCache\\DefaultResultCache), Object(PHPUnit\\Framework\\TestSuite))
#67 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\phpunit(104): PHPUnit\\TextUI\\Application->run(Array)
#68 {main}"} 
[2026-10-20 20:12:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7aef47a374","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:04] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:12:04] testing.INFO: Old stock: 10  
[2026-10-20 20:12:04] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:12:04] testing.INFO: New stock: 7  
[2026-10-20 20:12:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aef47a374"} 
[2026-10-20 20:12:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7aef4f31a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:05] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:12:05] testing.INFO: Old stock: 10  
[2026-10-20 20:12:05] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:05] testing.INFO: New stock: 8  
[2026-10-20 20:12:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aef4f31a4"} 
[2026-10-20 20:12:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7aef56d646","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:05] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7aef5bcb26","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7aef617df5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aef66c154","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:12:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aef6af5ef","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:12:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aef795776","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:07] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:12:07] testing.INFO: Old stock: 10  
[2026-10-20 20:12:07] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:07] testing.INFO: New stock: 8  
[2026-10-20 20:12:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aef795776"} 
[2026-10-20 20:12:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aef8431d9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:08] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:12:08] testing.INFO: Old stock: 10  
[2026-10-20 20:12:08] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:08] testing.INFO: New stock: 8  
[2026-10-20 20:12:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aef8431d9"} 
[2026-10-20 20:12:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aef8dbca8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:12:08] testing.INFO: Old stock: 10  
[2026-10-20 20:12:08] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:08] testing.INFO: New stock: 8  
[2026-10-20 20:12:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aef8dbca8"} 
[2026-10-20 20:12:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aef96ab26","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:09] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:12:09] testing.INFO: Old stock: 3  
[2026-10-20 20:12:09] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:09] testing.INFO: New stock: 1  
[2026-10-20 20:12:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aef96ab26"} 
[2026-10-20 20:12:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7aefa82fca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:10] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:12:10] testing.INFO: Old stock: 10  
[2026-10-20 20:12:10] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:10] testing.INFO: New stock: 8  
[2026-10-20 20:12:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7aefa82fca"} 
[2026-10-20 20:12:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:12:11] testing.INFO: Old stock: 10  
[2026-10-20 20:12:11] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:12:11] testing.INFO: New stock: 8  
[2026-10-20 20:12:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:12:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:11] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:12:11] testing.INFO: Old stock: 10  
[2026-10-20 20:12:11] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:12:11] testing.INFO: New stock: 9  
[2026-10-20 20:12:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:12:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:12:00+02:00"}} 
[2026-10-20 20:12:12] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:12:12] testing.INFO: Old stock: 10  
[2026-10-20 20:12:12] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:12:12] testing.INFO: New stock: 9  
[2026-10-20 20:12:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:12:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:12:12+02:00"}} 
[2026-10-20 20:12:12] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:12:13] testing.INFO: Old stock: 10  
[2026-10-20 20:12:13] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:12:13] testing.INFO: New stock: 9  
[2026-10-20 20:12:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:12:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:12:13+02:00"}} 
[2026-10-20 20:12:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:12:13+02:00"}} 
[2026-10-20 20:12:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:12:13+02:00"}} 
[2026-10-20 20:12:14] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:12:14] testing.INFO: Old stock: 5  
[2026-10-20 20:12:14] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:12:14] testing.INFO: New stock: 2  
[2026-10-20 20:12:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:12:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:12:14+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:12:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:12:15+02:00"}} 
[2026-10-20 20:12:15] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:12:15] testing.INFO: Old stock: 10  
[2026-10-20 20:12:15] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:12:15] testing.INFO: New stock: 9  
[2026-10-20 20:12:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:12:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7af0606b1a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:22] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:12:22] testing.INFO: Old stock: 16  
[2026-10-20 20:12:22] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:12:22] testing.INFO: New stock: 10  
[2026-10-20 20:12:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af0606b1a"} 
[2026-10-20 20:12:25] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":null,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:12:25] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":null,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:12:25] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":null,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:12:25"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:12:25] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:12:25] testing.ERROR: Product Store - Exception Caught {"error_message":"SQLSTATE[23000]: Integrity constraint violation: 19 NOT NULL constraint failed: purchases.supplier_id (Connection: sqlite, Database: :memory:, SQL: insert into \"purchases\" (\"supplier_id\", \"business_location\", \"reference_no\", \"purchase_date\", \"status\", \"payment_status\", \"grand_total\", \"created_by\", \"updated_at\", \"created_at\") values (?, Laravel, PUR-20261020-337, 2026-10-20 20:12:25, received, due, 6000, 1, 2026-10-20 20:12:25, 2026-10-20 20:12:25))","error_code":"23000","error_file":"C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php","error_line":838,"error_trace":"#0 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php(794): Illuminate\\Database\\Connection->runQueryCallback('insert into \"pu...', Array, Object(Closure))
#1 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php(573): Illuminate\\Database\\Connection->run('insert into \"pu...', Array, Object(Closure))
#2 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Connection.php(537): Illuminate\\Database\\Connection->statement('insert into \"pu...', Array)
#3 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Processors\\Processor.php(32): Illuminate\\Database\\Connection->insert('insert into \"pu...', Array)
#4 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Builder.php(4103): Illuminate\\Database\\Query\\Processors\\Processor->processInsertGetId(Object(Illuminate\\Database\\Query\\Builder), 'insert into \"pu...', Array, 'id')
#5 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(2235): Illuminate\\Database\\Query\\Builder->insertGetId(Array, 'id')
#6 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1436): Illuminate\\Database\\Eloquent\\Builder->__call('insertGetId', Array)
#7 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1401): Illuminate\\Database\\Eloquent\\Model->insertAndSetId(Object(Illuminate\\Database\\Eloquent\\Builder), Array)
#8 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(1240): Illuminate\\Database\\Eloquent\\Model->performInsert(Object(Illuminate\\Database\\Eloquent\\Builder))
#9 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1219): Illuminate\\Database\\Eloquent\\Model->save()
#10 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\helpers.php(388): Illuminate\\Database\\Eloquent\\Builder->Illuminate\\Database\\Eloquent\\{closure}(Object(App\\Models\\Purchase))
#11 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Builder.php(1218): tap(Object(App\\Models\\Purchase), Object(Closure))
#12 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\Traits\\ForwardsCalls.php(23): Illuminate\\Database\\Eloquent\\Builder->create(Array)
#13 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2540): Illuminate\\Database\\Eloquent\\Model->forwardCallTo(Object(Illuminate\\Database\\Eloquent\\Builder), 'create', Array)
#14 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Eloquent\\Model.php(2556): Illuminate\\Database\\Eloquent\\Model->__call('create', Array)
#15 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Controllers\\ProductController.php(195): Illuminate\\Database\\Eloquent\\Model::__callStatic('create', Array)
#16 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Controller.php(54): App\\Http\\Controllers\\ProductController->store(Object(Illuminate\\Http\\Request))
#17 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\ControllerDispatcher.php(43): Illuminate\\Routing\\Controller->callAction('store', Array)
#18 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(265): Illuminate\\Routing\\ControllerDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(App\\Http\\Controllers\\ProductController), 'store')
#19 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Route.php(211): Illuminate\\Routing\\Route->runController()
#20 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(822): Illuminate\\Routing\\Route->run()
#21 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#22 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\LogUserActivity.php(19): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#23 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\LogUserActivity->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\app\\Http\\Middleware\\CheckPermission.php(35): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): App\\Http\\Middleware\\CheckPermission->handle(Object(Illuminate\\Http\\Request), Object(Closure), 'add_product')
#26 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Middleware\\SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Auth\\Middleware\\Authenticate.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\View\\Middleware\\ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Session\\Middleware\\StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#36 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Cookie\\Middleware\\EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#43 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#44 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#45 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#46 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#47 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#48 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Http\\Middleware\\ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#66 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#68 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#69 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(607): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#70 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Testing\\Concerns\\MakesHttpRequests.php(397): Illuminate\\Foundation\\Testing\\TestCase->call('POST', '/products', Array, Array, Array, Array)
#71 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\tests\\Feature\\ProductBatchTest.php(231): Illuminate\\Foundation\\Testing\\TestCase->post('/products', Array)
#72 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(1667): Tests\\Feature\\ProductBatchTest->test_new_product_opening_quantity_is_its_first_batch()
#73 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(519): PHPUnit\\Framework\\TestCase->runTest()
#74 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestRunner\\TestRunner.php(87): PHPUnit\\Framework\\TestCase->runBare()
#75 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestCase.php(365): PHPUnit\\Framework\\TestRunner->run(Object(Tests\\Feature\\ProductBatchTest))
#76 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestCase->run()
#77 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#78 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\Framework\\TestSuite.php(369): PHPUnit\\Framework\\TestSuite->run()
#79 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\TestRunner.php(64): PHPUnit\\Framework\\TestSuite->run()
#80 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\src\\TextUI\\Application.php(211): PHPUnit\\TextUI\\TestRunner->run(Object(PHPUnit\\TextUI\\Configuration\\Configuration), Object(PHPUnit\\Runner\\ResultCache\\DefaultResultCache), Object(PHPUnit\\Framework\\TestSuite))
#81 C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\vendor\\phpunit\\phpunit\\phpunit(104): PHPUnit\\TextUI\\Application->run(Array)
#82 {main}"} 
[2026-10-20 20:12:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af14ca0fc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:36] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:12:36] testing.INFO: Old stock: 10  
[2026-10-20 20:12:36] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:12:36] testing.INFO: New stock: 6  
[2026-10-20 20:12:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af14ca0fc"} 
[2026-10-20 20:12:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af158c312","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:37] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:12:37] testing.INFO: Old stock: 10  
[2026-10-20 20:12:37] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:12:37] testing.INFO: New stock: 5  
[2026-10-20 20:12:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af158c312"} 
[2026-10-20 20:12:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af1621b63","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:38] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:12:38] testing.INFO: Old stock: 10  
[2026-10-20 20:12:38] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:12:38] testing.INFO: New stock: 6  
[2026-10-20 20:12:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af1621b63"} 
[2026-10-20 20:12:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af16dc1a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:38] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:12:38] testing.INFO: Old stock: 5  
[2026-10-20 20:12:38] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:12:38] testing.INFO: New stock: 1  
[2026-10-20 20:12:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af16dc1a4"} 
[2026-10-20 20:12:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af176ac11","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:39] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:12:39] testing.INFO: Old stock: 10  
[2026-10-20 20:12:39] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:12:39] testing.INFO: New stock: 5  
[2026-10-20 20:12:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af176ac11"} 
[2026-10-20 20:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af1832e85","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:40] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:12:40] testing.INFO: Old stock: 12  
[2026-10-20 20:12:40] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:12:40] testing.INFO: New stock: 7  
[2026-10-20 20:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af1832e85"} 
[2026-10-20 20:12:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af18bbcb8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:12:40] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:12:40] testing.INFO: Old stock: 12  
[2026-10-20 20:12:40] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:12:40] testing.INFO: New stock: 7  
[2026-10-20 20:12:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af18bbcb8"} 
[2026-10-20 20:13:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7af358a360","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:09] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:13:09] testing.INFO: Old stock: 10  
[2026-10-20 20:13:09] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:13:09] testing.INFO: New stock: 7  
[2026-10-20 20:13:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af358a360"} 
[2026-10-20 20:13:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7af36245c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:13:10] testing.INFO: Old stock: 10  
[2026-10-20 20:13:10] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:10] testing.INFO: New stock: 8  
[2026-10-20 20:13:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af36245c4"} 
[2026-10-20 20:13:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7af3696dd0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:11] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7af3702c1f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7af3760fb7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af37bcf82","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:13:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af383e6ec","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:13:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af3938be6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:13:13] testing.INFO: Old stock: 10  
[2026-10-20 20:13:13] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:13] testing.INFO: New stock: 8  
[2026-10-20 20:13:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af3938be6"} 
[2026-10-20 20:13:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af39d8242","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:13] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:13:13] testing.INFO: Old stock: 10  
[2026-10-20 20:13:13] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:13] testing.INFO: New stock: 8  
[2026-10-20 20:13:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af39d8242"} 
[2026-10-20 20:13:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af3a9a867","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:14] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:13:14] testing.INFO: Old stock: 10  
[2026-10-20 20:13:14] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:14] testing.INFO: New stock: 8  
[2026-10-20 20:13:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af3a9a867"} 
[2026-10-20 20:13:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af3b39c2f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:15] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:13:15] testing.INFO: Old stock: 3  
[2026-10-20 20:13:15] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:15] testing.INFO: New stock: 1  
[2026-10-20 20:13:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af3b39c2f"} 
[2026-10-20 20:13:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af3c6ca32","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:16] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:13:16] testing.INFO: Old stock: 10  
[2026-10-20 20:13:16] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:16] testing.INFO: New stock: 8  
[2026-10-20 20:13:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af3c6ca32"} 
[2026-10-20 20:13:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:13:17] testing.INFO: Old stock: 10  
[2026-10-20 20:13:17] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:13:17] testing.INFO: New stock: 8  
[2026-10-20 20:13:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:13:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:13:17] testing.INFO: Old stock: 10  
[2026-10-20 20:13:17] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:13:17] testing.INFO: New stock: 9  
[2026-10-20 20:13:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:13:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:13:00+02:00"}} 
[2026-10-20 20:13:18] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:13:18] testing.INFO: Old stock: 10  
[2026-10-20 20:13:18] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:13:18] testing.INFO: New stock: 9  
[2026-10-20 20:13:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:13:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:13:18+02:00"}} 
[2026-10-20 20:13:18] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:13:18] testing.INFO: Old stock: 10  
[2026-10-20 20:13:18] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:13:18] testing.INFO: New stock: 9  
[2026-10-20 20:13:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:13:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:13:19+02:00"}} 
[2026-10-20 20:13:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:13:19+02:00"}} 
[2026-10-20 20:13:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:13:19+02:00"}} 
[2026-10-20 20:13:19] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:13:19] testing.INFO: Old stock: 5  
[2026-10-20 20:13:19] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:13:19] testing.INFO: New stock: 2  
[2026-10-20 20:13:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:13:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:13:20+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:13:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:13:20+02:00"}} 
[2026-10-20 20:13:21] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:13:21] testing.INFO: Old stock: 10  
[2026-10-20 20:13:21] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:13:21] testing.INFO: New stock: 9  
[2026-10-20 20:13:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:13:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7af47f124f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:28] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:13:28] testing.INFO: Old stock: 16  
[2026-10-20 20:13:28] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:13:28] testing.INFO: New stock: 10  
[2026-10-20 20:13:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af47f124f"} 
[2026-10-20 20:13:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af574befa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:13:43] testing.INFO: Old stock: 10  
[2026-10-20 20:13:43] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:13:43] testing.INFO: New stock: 6  
[2026-10-20 20:13:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af574befa"} 
[2026-10-20 20:13:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af57d9b80","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:43] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:13:43] testing.INFO: Old stock: 10  
[2026-10-20 20:13:43] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:13:43] testing.INFO: New stock: 5  
[2026-10-20 20:13:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af57d9b80"} 
[2026-10-20 20:13:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af587c6f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:44] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:13:44] testing.INFO: Old stock: 10  
[2026-10-20 20:13:44] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:13:44] testing.INFO: New stock: 6  
[2026-10-20 20:13:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af587c6f0"} 
[2026-10-20 20:13:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af594a93e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:45] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:13:45] testing.INFO: Old stock: 5  
[2026-10-20 20:13:45] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:13:45] testing.INFO: New stock: 1  
[2026-10-20 20:13:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af594a93e"} 
[2026-10-20 20:13:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af59d1c5c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:45] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:13:45] testing.INFO: Old stock: 10  
[2026-10-20 20:13:45] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:13:45] testing.INFO: New stock: 5  
[2026-10-20 20:13:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af59d1c5c"} 
[2026-10-20 20:13:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af5aaa709","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:46] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:13:46] testing.INFO: Old stock: 12  
[2026-10-20 20:13:46] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:13:46] testing.INFO: New stock: 7  
[2026-10-20 20:13:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af5aaa709"} 
[2026-10-20 20:13:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af5b399bd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:13:47] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:13:47] testing.INFO: Old stock: 12  
[2026-10-20 20:13:47] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:13:47] testing.INFO: New stock: 7  
[2026-10-20 20:13:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af5b399bd"} 
[2026-10-20 20:14:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7af734affc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:14:11] testing.INFO: Old stock: 10  
[2026-10-20 20:14:11] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:14:11] testing.INFO: New stock: 7  
[2026-10-20 20:14:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af734affc"} 
[2026-10-20 20:14:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7af73caee6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:11] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:14:11] testing.INFO: Old stock: 10  
[2026-10-20 20:14:11] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:11] testing.INFO: New stock: 8  
[2026-10-20 20:14:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af73caee6"} 
[2026-10-20 20:14:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7af7456d0f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:12] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7af74bfed8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7af752237a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af7579058","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:14:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af75d0e1c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:14:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af76b3fbf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:14:14] testing.INFO: Old stock: 10  
[2026-10-20 20:14:14] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:14] testing.INFO: New stock: 8  
[2026-10-20 20:14:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af76b3fbf"} 
[2026-10-20 20:14:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af776bede","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:14:15] testing.INFO: Old stock: 10  
[2026-10-20 20:14:15] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:15] testing.INFO: New stock: 8  
[2026-10-20 20:14:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af776bede"} 
[2026-10-20 20:14:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af78139be","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:16] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:14:16] testing.INFO: Old stock: 10  
[2026-10-20 20:14:16] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:16] testing.INFO: New stock: 8  
[2026-10-20 20:14:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af78139be"} 
[2026-10-20 20:14:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af789be39","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:16] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:14:16] testing.INFO: Old stock: 3  
[2026-10-20 20:14:16] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:16] testing.INFO: New stock: 1  
[2026-10-20 20:14:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af789be39"} 
[2026-10-20 20:14:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7af79c62d0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:17] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:14:17] testing.INFO: Old stock: 10  
[2026-10-20 20:14:17] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:17] testing.INFO: New stock: 8  
[2026-10-20 20:14:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af79c62d0"} 
[2026-10-20 20:14:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:14:18] testing.INFO: Old stock: 10  
[2026-10-20 20:14:18] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:14:18] testing.INFO: New stock: 8  
[2026-10-20 20:14:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:14:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:18] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:14:18] testing.INFO: Old stock: 10  
[2026-10-20 20:14:19] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:14:19] testing.INFO: New stock: 9  
[2026-10-20 20:14:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:14:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:14:00+02:00"}} 
[2026-10-20 20:14:19] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:14:19] testing.INFO: Old stock: 10  
[2026-10-20 20:14:19] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:14:19] testing.INFO: New stock: 9  
[2026-10-20 20:14:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:14:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:14:19+02:00"}} 
[2026-10-20 20:14:19] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:14:19] testing.INFO: Old stock: 10  
[2026-10-20 20:14:19] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:14:19] testing.INFO: New stock: 9  
[2026-10-20 20:14:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:14:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:14:20+02:00"}} 
[2026-10-20 20:14:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:14:20+02:00"}} 
[2026-10-20 20:14:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:14:20+02:00"}} 
[2026-10-20 20:14:20] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:14:20] testing.INFO: Old stock: 5  
[2026-10-20 20:14:20] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:14:20] testing.INFO: New stock: 2  
[2026-10-20 20:14:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:14:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:14:21+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:14:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:14:22+02:00"}} 
[2026-10-20 20:14:22] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:14:22] testing.INFO: Old stock: 10  
[2026-10-20 20:14:22] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:14:22] testing.INFO: New stock: 9  
[2026-10-20 20:14:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:14:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7af84b9e59","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:28] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:14:28] testing.INFO: Old stock: 16  
[2026-10-20 20:14:28] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:14:28] testing.INFO: New stock: 10  
[2026-10-20 20:14:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af84b9e59"} 
[2026-10-20 20:14:32] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 20:14:32] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:14:32] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:14:32"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:14:32] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:14:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af9359598","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:14:43] testing.INFO: Old stock: 10  
[2026-10-20 20:14:43] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:14:43] testing.INFO: New stock: 6  
[2026-10-20 20:14:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af9359598"} 
[2026-10-20 20:14:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af93d62d8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:43] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:14:43] testing.INFO: Old stock: 10  
[2026-10-20 20:14:43] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:14:43] testing.INFO: New stock: 5  
[2026-10-20 20:14:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af93d62d8"} 
[2026-10-20 20:14:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af9473c2e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:44] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:14:44] testing.INFO: Old stock: 10  
[2026-10-20 20:14:44] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:14:44] testing.INFO: New stock: 6  
[2026-10-20 20:14:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af9473c2e"} 
[2026-10-20 20:14:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7af954dade","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:45] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:14:45] testing.INFO: Old stock: 5  
[2026-10-20 20:14:45] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:14:45] testing.INFO: New stock: 1  
[2026-10-20 20:14:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af954dade"} 
[2026-10-20 20:14:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af95d589d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:45] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:14:45] testing.INFO: Old stock: 10  
[2026-10-20 20:14:45] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:14:45] testing.INFO: New stock: 5  
[2026-10-20 20:14:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af95d589d"} 
[2026-10-20 20:14:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af96a687b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:46] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:14:46] testing.INFO: Old stock: 12  
[2026-10-20 20:14:46] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:14:46] testing.INFO: New stock: 7  
[2026-10-20 20:14:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af96a687b"} 
[2026-10-20 20:14:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7af9732f61","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:14:47] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:14:47] testing.INFO: Old stock: 12  
[2026-10-20 20:14:47] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:14:47] testing.INFO: New stock: 7  
[2026-10-20 20:14:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7af9732f61"} 
[2026-10-20 20:15:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7afb1eafd0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:15:14] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:15:14] testing.INFO: Old stock: 16  
[2026-10-20 20:15:14] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:15:14] testing.INFO: New stock: 10  
[2026-10-20 20:15:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7afb1eafd0"} 
[2026-10-20 20:15:14] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 20:15:14] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:15:14] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:15:14"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:15:14] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:28:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b2cecd176","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:28:30] testing.INFO: Old stock: 10  
[2026-10-20 20:28:30] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:28:30] testing.INFO: New stock: 7  
[2026-10-20 20:28:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2cecd176"} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7b2cef38b3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:28:31] testing.INFO: Old stock: 10  
[2026-10-20 20:28:31] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:31] testing.INFO: New stock: 8  
[2026-10-20 20:28:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2cef38b3"} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b2cf1833d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b2cf32dc1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7b2cf4df5d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2cf60780","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2cf73844","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2cfa8327","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:31] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:28:31] testing.INFO: Old stock: 10  
[2026-10-20 20:28:31] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:31] testing.INFO: New stock: 8  
[2026-10-20 20:28:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2cfa8327"} 
[2026-10-20 20:28:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2cfd3900","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:28:31] testing.INFO: Old stock: 10  
[2026-10-20 20:28:31] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:31] testing.INFO: New stock: 8  
[2026-10-20 20:28:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2cfd3900"} 
[2026-10-20 20:28:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2d00de8a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:32] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:28:32] testing.INFO: Old stock: 10  
[2026-10-20 20:28:32] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:32] testing.INFO: New stock: 8  
[2026-10-20 20:28:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d00de8a"} 
[2026-10-20 20:28:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2d02be18","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:32] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:28:32] testing.INFO: Old stock: 3  
[2026-10-20 20:28:32] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:32] testing.INFO: New stock: 1  
[2026-10-20 20:28:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d02be18"} 
[2026-10-20 20:28:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b2d073dce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:32] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:28:32] testing.INFO: Old stock: 10  
[2026-10-20 20:28:32] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:32] testing.INFO: New stock: 8  
[2026-10-20 20:28:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d073dce"} 
[2026-10-20 20:28:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:32] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:28:32] testing.INFO: Old stock: 10  
[2026-10-20 20:28:32] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:28:32] testing.INFO: New stock: 8  
[2026-10-20 20:28:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:28:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:32] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:28:32] testing.INFO: Old stock: 10  
[2026-10-20 20:28:32] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:28:32] testing.INFO: New stock: 9  
[2026-10-20 20:28:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:28:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:28:00+02:00"}} 
[2026-10-20 20:28:32] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:28:32] testing.INFO: Old stock: 10  
[2026-10-20 20:28:32] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:28:32] testing.INFO: New stock: 9  
[2026-10-20 20:28:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:28:33+02:00"}} 
[2026-10-20 20:28:33] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:28:33] testing.INFO: Old stock: 10  
[2026-10-20 20:28:33] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:28:33] testing.INFO: New stock: 9  
[2026-10-20 20:28:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:28:33+02:00"}} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:28:33+02:00"}} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:28:33+02:00"}} 
[2026-10-20 20:28:33] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:28:33] testing.INFO: Old stock: 5  
[2026-10-20 20:28:33] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:28:33] testing.INFO: New stock: 2  
[2026-10-20 20:28:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:28:33+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:28:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:28:33+02:00"}} 
[2026-10-20 20:28:33] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:28:33] testing.INFO: Old stock: 10  
[2026-10-20 20:28:33] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:28:33] testing.INFO: New stock: 9  
[2026-10-20 20:28:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:28:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b2d361972","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:35] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:28:35] testing.INFO: Old stock: 16  
[2026-10-20 20:28:35] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:28:35] testing.INFO: New stock: 10  
[2026-10-20 20:28:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d361972"} 
[2026-10-20 20:28:36] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 20:28:36] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:28:36] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:28:36"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:28:36] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:28:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b2d709420","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:39] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:28:39] testing.INFO: Old stock: 10  
[2026-10-20 20:28:39] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:28:39] testing.INFO: New stock: 6  
[2026-10-20 20:28:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d709420"} 
[2026-10-20 20:28:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b2d729f54","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:28:39] testing.INFO: Old stock: 10  
[2026-10-20 20:28:39] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:28:39] testing.INFO: New stock: 5  
[2026-10-20 20:28:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d729f54"} 
[2026-10-20 20:28:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b2d74ebad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:39] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:28:39] testing.INFO: Old stock: 10  
[2026-10-20 20:28:39] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:28:39] testing.INFO: New stock: 6  
[2026-10-20 20:28:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d74ebad"} 
[2026-10-20 20:28:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b2d77c51d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:39] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:28:39] testing.INFO: Old stock: 5  
[2026-10-20 20:28:39] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:28:39] testing.INFO: New stock: 1  
[2026-10-20 20:28:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d77c51d"} 
[2026-10-20 20:28:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b2d7a24e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:39] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:28:39] testing.INFO: Old stock: 10  
[2026-10-20 20:28:39] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:28:39] testing.INFO: New stock: 5  
[2026-10-20 20:28:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d7a24e5"} 
[2026-10-20 20:28:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b2d7d58f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:39] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:28:39] testing.INFO: Old stock: 12  
[2026-10-20 20:28:39] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:28:39] testing.INFO: New stock: 7  
[2026-10-20 20:28:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d7d58f3"} 
[2026-10-20 20:28:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b2d8092ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:28:40] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:28:40] testing.INFO: Old stock: 12  
[2026-10-20 20:28:40] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:28:40] testing.INFO: New stock: 7  
[2026-10-20 20:28:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b2d8092ff"} 
[2026-10-20 20:30:44] local.ERROR: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'quantity_remaining' in 'field list' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select `id`, `product_id`, `batch_no`, `expiry_date`, `quantity_remaining` from `product_batches` where `quantity_remaining` > 0 and `product_batches`.`product_id` in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23) order by CASE WHEN expiry_date IS NULL THEN 1 ELSE 0 END, `expiry_date` asc, `id` asc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'quantity_remaining' in 'field list' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select `id`, `product_id`, `batch_no`, `expiry_date`, `quantity_remaining` from `product_batches` where `quantity_remaining` > 0 and `product_batches`.`product_id` in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23) order by CASE WHEN expiry_date IS NULL THEN 1 ELSE 0 END, `expiry_date` asc, `id` asc) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select `id`, `p...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select `id`, `p...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select `id`, `p...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(212): Illuminate/Database/Eloquent/Builder->get(Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(175): Illuminate/Database/Eloquent/Relations/Relation->get()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(950): Illuminate/Database/Eloquent/Relations/Relation->getEager()
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(919): Illuminate/Database/Eloquent/Builder->eagerLoadRelation(Array, 'inStockBatches', Object(Closure))
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(885): Illuminate/Database/Eloquent/Builder->eagerLoadRelations(Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/StockAdjustmentController.php(71): Illuminate/Database/Eloquent/Builder->get()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->create(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('create', Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'create')
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'create_stock_ad...')
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#68 {main}

[previous exception] [object] (PDOException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'quantity_remaining' in 'field list' at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select `id`, `p...')
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select `id`, `p...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select `id`, `p...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select `id`, `p...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select `id`, `p...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(212): Illuminate/Database/Eloquent/Builder->get(Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(175): Illuminate/Database/Eloquent/Relations/Relation->get()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(950): Illuminate/Database/Eloquent/Relations/Relation->getEager()
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(919): Illuminate/Database/Eloquent/Builder->eagerLoadRelation(Array, 'inStockBatches', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(885): Illuminate/Database/Eloquent/Builder->eagerLoadRelations(Array)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/StockAdjustmentController.php(71): Illuminate/Database/Eloquent/Builder->get()
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->create(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('create', Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'create')
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'create_stock_ad...')
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#68 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#69 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#70 {main}
"} 
[2026-10-20 20:34:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b4463c682","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:34:46] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:34:46] testing.INFO: Old stock: 16  
[2026-10-20 20:34:46] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:34:46] testing.INFO: New stock: 10  
[2026-10-20 20:34:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4463c682"} 
[2026-10-20 20:34:47] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 20:34:47] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:34:47] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:34:47"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:34:47] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:34:51] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:34:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:34:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b44caef3e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:34:52] testing.INFO: Stock deduction for product: Test Product 18  
[2026-10-20 20:34:52] testing.INFO: Old stock: 7  
[2026-10-20 20:34:52] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:34:52] testing.INFO: New stock: 5  
[2026-10-20 20:34:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b44caef3e"} 
[2026-10-20 20:34:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b44e88710","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:34:54] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 20:34:54] testing.INFO: Old stock: 13  
[2026-10-20 20:34:54] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:34:54] testing.INFO: New stock: 8  
[2026-10-20 20:34:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b44e88710"} 
[2026-10-20 20:34:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b44eb26f2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:34:54] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 20:34:54] testing.INFO: Old stock: 8  
[2026-10-20 20:34:54] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:34:54] testing.INFO: New stock: 4  
[2026-10-20 20:34:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b44eb26f2"} 
[2026-10-20 20:34:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b44fc20d2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:34:55] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 20:34:55] testing.INFO: Old stock: 8  
[2026-10-20 20:34:55] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:34:55] testing.INFO: New stock: 2  
[2026-10-20 20:34:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b44fc20d2"} 
[2026-10-20 20:34:57] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:34:57] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:34:57] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 20:34:57"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:34:57] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 20:35:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b4678affb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:35:19] testing.INFO: Old stock: 10  
[2026-10-20 20:35:19] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:35:19] testing.INFO: New stock: 7  
[2026-10-20 20:35:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4678affb"} 
[2026-10-20 20:35:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7b4681152d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:35:20] testing.INFO: Old stock: 10  
[2026-10-20 20:35:20] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:20] testing.INFO: New stock: 8  
[2026-10-20 20:35:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4681152d"} 
[2026-10-20 20:35:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b46881e0a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:20] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b468c9eee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7b46933410","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b46986178","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:35:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b469e061c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:35:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b46ad6df2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:35:23] testing.INFO: Old stock: 10  
[2026-10-20 20:35:23] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:23] testing.INFO: New stock: 8  
[2026-10-20 20:35:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b46ad6df2"} 
[2026-10-20 20:35:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b46b88d81","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:23] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:35:23] testing.INFO: Old stock: 10  
[2026-10-20 20:35:23] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:23] testing.INFO: New stock: 8  
[2026-10-20 20:35:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b46b88d81"} 
[2026-10-20 20:35:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b46c3e177","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:35:24] testing.INFO: Old stock: 10  
[2026-10-20 20:35:24] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:24] testing.INFO: New stock: 8  
[2026-10-20 20:35:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b46c3e177"} 
[2026-10-20 20:35:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b46cc83c7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:35:24] testing.INFO: Old stock: 3  
[2026-10-20 20:35:24] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:24] testing.INFO: New stock: 1  
[2026-10-20 20:35:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b46cc83c7"} 
[2026-10-20 20:35:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b46de7081","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:26] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:35:26] testing.INFO: Old stock: 10  
[2026-10-20 20:35:26] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:26] testing.INFO: New stock: 8  
[2026-10-20 20:35:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b46de7081"} 
[2026-10-20 20:35:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:26] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:35:26] testing.INFO: Old stock: 10  
[2026-10-20 20:35:26] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:26] testing.INFO: New stock: 8  
[2026-10-20 20:35:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:35:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:27] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:35:27] testing.INFO: Old stock: 10  
[2026-10-20 20:35:27] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:35:27] testing.INFO: New stock: 9  
[2026-10-20 20:35:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:35:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:35:00+02:00"}} 
[2026-10-20 20:35:27] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:35:27] testing.INFO: Old stock: 10  
[2026-10-20 20:35:27] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:35:27] testing.INFO: New stock: 9  
[2026-10-20 20:35:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:35:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:35:28+02:00"}} 
[2026-10-20 20:35:28] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:35:28] testing.INFO: Old stock: 10  
[2026-10-20 20:35:28] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:35:28] testing.INFO: New stock: 9  
[2026-10-20 20:35:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:35:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:35:28+02:00"}} 
[2026-10-20 20:35:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:35:29+02:00"}} 
[2026-10-20 20:35:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:35:29+02:00"}} 
[2026-10-20 20:35:29] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:35:29] testing.INFO: Old stock: 5  
[2026-10-20 20:35:29] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:35:29] testing.INFO: New stock: 2  
[2026-10-20 20:35:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:35:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:35:30+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:35:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:35:30+02:00"}} 
[2026-10-20 20:35:30] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:35:30] testing.INFO: Old stock: 10  
[2026-10-20 20:35:30] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:35:30] testing.INFO: New stock: 9  
[2026-10-20 20:35:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:35:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b47960978","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:37] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:35:37] testing.INFO: Old stock: 16  
[2026-10-20 20:35:37] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:35:37] testing.INFO: New stock: 10  
[2026-10-20 20:35:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b47960978"} 
[2026-10-20 20:35:41] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 20:35:41] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:35:41] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:35:41"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:35:41] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:35:44] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:35:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b48187a59","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:45] testing.INFO: Stock deduction for product: Test Product 18  
[2026-10-20 20:35:45] testing.INFO: Old stock: 7  
[2026-10-20 20:35:45] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:35:45] testing.INFO: New stock: 5  
[2026-10-20 20:35:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b48187a59"} 
[2026-10-20 20:35:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b483209c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:47] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 20:35:47] testing.INFO: Old stock: 13  
[2026-10-20 20:35:47] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:35:47] testing.INFO: New stock: 8  
[2026-10-20 20:35:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b483209c4"} 
[2026-10-20 20:35:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b4834aced","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:47] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 20:35:47] testing.INFO: Old stock: 8  
[2026-10-20 20:35:47] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:35:47] testing.INFO: New stock: 4  
[2026-10-20 20:35:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4834aced"} 
[2026-10-20 20:35:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b48449770","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:48] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 20:35:48] testing.INFO: Old stock: 8  
[2026-10-20 20:35:48] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:35:48] testing.INFO: New stock: 2  
[2026-10-20 20:35:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b48449770"} 
[2026-10-20 20:35:49] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:35:49] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:35:49] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 20:35:49"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:35:49] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 20:35:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b48f76e14","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:35:59] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:35:59] testing.INFO: Old stock: 10  
[2026-10-20 20:35:59] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:35:59] testing.INFO: New stock: 6  
[2026-10-20 20:35:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b48f76e14"} 
[2026-10-20 20:36:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b49018ddd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:36:00] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:36:00] testing.INFO: Old stock: 10  
[2026-10-20 20:36:00] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:36:00] testing.INFO: New stock: 5  
[2026-10-20 20:36:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b49018ddd"} 
[2026-10-20 20:36:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b490b1353","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:36:00] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:36:00] testing.INFO: Old stock: 10  
[2026-10-20 20:36:00] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:36:00] testing.INFO: New stock: 6  
[2026-10-20 20:36:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b490b1353"} 
[2026-10-20 20:36:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b4917caf0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:36:01] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:36:01] testing.INFO: Old stock: 5  
[2026-10-20 20:36:01] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:36:01] testing.INFO: New stock: 1  
[2026-10-20 20:36:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4917caf0"} 
[2026-10-20 20:36:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b4920ff4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:36:02] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:36:02] testing.INFO: Old stock: 10  
[2026-10-20 20:36:02] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:36:02] testing.INFO: New stock: 5  
[2026-10-20 20:36:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4920ff4c"} 
[2026-10-20 20:36:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b492ed503","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:36:03] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:36:03] testing.INFO: Old stock: 12  
[2026-10-20 20:36:03] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:36:03] testing.INFO: New stock: 7  
[2026-10-20 20:36:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b492ed503"} 
[2026-10-20 20:36:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b4937b387","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:36:03] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:36:03] testing.INFO: Old stock: 12  
[2026-10-20 20:36:03] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:36:03] testing.INFO: New stock: 7  
[2026-10-20 20:36:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b4937b387"} 
[2026-10-20 20:40:36] local.ERROR: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'quantity_remaining' in 'field list' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select `id`, `product_id`, `batch_no`, `expiry_date`, `quantity_remaining` from `product_batches` where `quantity_remaining` > 0 and `product_batches`.`product_id` in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23) order by CASE WHEN expiry_date IS NULL THEN 1 ELSE 0 END, `expiry_date` asc, `id` asc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'quantity_remaining' in 'field list' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select `id`, `product_id`, `batch_no`, `expiry_date`, `quantity_remaining` from `product_batches` where `quantity_remaining` > 0 and `product_batches`.`product_id` in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23) order by CASE WHEN expiry_date IS NULL THEN 1 ELSE 0 END, `expiry_date` asc, `id` asc) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select `id`, `p...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select `id`, `p...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select `id`, `p...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(212): Illuminate/Database/Eloquent/Builder->get(Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(175): Illuminate/Database/Eloquent/Relations/Relation->get()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(950): Illuminate/Database/Eloquent/Relations/Relation->getEager()
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(919): Illuminate/Database/Eloquent/Builder->eagerLoadRelation(Array, 'inStockBatches', Object(Closure))
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(885): Illuminate/Database/Eloquent/Builder->eagerLoadRelations(Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/StockAdjustmentController.php(71): Illuminate/Database/Eloquent/Builder->get()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->create(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('create', Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'create')
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'create_stock_ad...')
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#68 {main}

[previous exception] [object] (PDOException(code: 42S22): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'quantity_remaining' in 'field list' at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select `id`, `p...')
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select `id`, `p...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select `id`, `p...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select `id`, `p...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select `id`, `p...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(212): Illuminate/Database/Eloquent/Builder->get(Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(175): Illuminate/Database/Eloquent/Relations/Relation->get()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(950): Illuminate/Database/Eloquent/Relations/Relation->getEager()
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(919): Illuminate/Database/Eloquent/Builder->eagerLoadRelation(Array, 'inStockBatches', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(885): Illuminate/Database/Eloquent/Builder->eagerLoadRelations(Array)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/StockAdjustmentController.php(71): Illuminate/Database/Eloquent/Builder->get()
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->create(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('create', Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'create')
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'create_stock_ad...')
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#68 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#69 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#70 {main}
"} 
[2026-10-20 20:42:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b6072f905","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:42:15] testing.INFO: Old stock: 10  
[2026-10-20 20:42:15] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:42:15] testing.INFO: New stock: 7  
[2026-10-20 20:42:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b6072f905"} 
[2026-10-20 20:42:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7b60765a0a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:42:15] testing.INFO: Old stock: 10  
[2026-10-20 20:42:15] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:15] testing.INFO: New stock: 8  
[2026-10-20 20:42:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b60765a0a"} 
[2026-10-20 20:42:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b6079e1c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:15] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7b607cacf0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7b607eba1d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b6081effa","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:42:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b60847555","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 20:42:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b608aa4fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:16] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:42:16] testing.INFO: Old stock: 10  
[2026-10-20 20:42:16] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:16] testing.INFO: New stock: 8  
[2026-10-20 20:42:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b608aa4fd"} 
[2026-10-20 20:42:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b609066a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:42:17] testing.INFO: Old stock: 10  
[2026-10-20 20:42:17] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:17] testing.INFO: New stock: 8  
[2026-10-20 20:42:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b609066a6"} 
[2026-10-20 20:42:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b609513e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:17] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:42:17] testing.INFO: Old stock: 10  
[2026-10-20 20:42:17] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:17] testing.INFO: New stock: 8  
[2026-10-20 20:42:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b609513e9"} 
[2026-10-20 20:42:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b6099441a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:42:17] testing.INFO: Old stock: 3  
[2026-10-20 20:42:17] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:17] testing.INFO: New stock: 1  
[2026-10-20 20:42:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b6099441a"} 
[2026-10-20 20:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b60a2169e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:18] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 20:42:18] testing.INFO: Old stock: 10  
[2026-10-20 20:42:18] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:18] testing.INFO: New stock: 8  
[2026-10-20 20:42:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b60a2169e"} 
[2026-10-20 20:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 20:42:18] testing.INFO: Old stock: 10  
[2026-10-20 20:42:18] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:18] testing.INFO: New stock: 8  
[2026-10-20 20:42:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:18] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 20:42:18] testing.INFO: Old stock: 10  
[2026-10-20 20:42:18] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:42:18] testing.INFO: New stock: 9  
[2026-10-20 20:42:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:42:00+02:00"}} 
[2026-10-20 20:42:18] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:42:18] testing.INFO: Old stock: 10  
[2026-10-20 20:42:18] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:42:18] testing.INFO: New stock: 9  
[2026-10-20 20:42:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T20:42:18+02:00"}} 
[2026-10-20 20:42:19] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:42:19] testing.INFO: Old stock: 10  
[2026-10-20 20:42:19] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:42:19] testing.INFO: New stock: 9  
[2026-10-20 20:42:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:42:19+02:00"}} 
[2026-10-20 20:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:42:19+02:00"}} 
[2026-10-20 20:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:42:19+02:00"}} 
[2026-10-20 20:42:19] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:42:19] testing.INFO: Old stock: 5  
[2026-10-20 20:42:19] testing.INFO: Quantity deducted: 3  
[2026-10-20 20:42:19] testing.INFO: New stock: 2  
[2026-10-20 20:42:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T20:42:19+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 20:42:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T17:42:19+02:00"}} 
[2026-10-20 20:42:20] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 20:42:20] testing.INFO: Old stock: 10  
[2026-10-20 20:42:20] testing.INFO: Quantity deducted: 1  
[2026-10-20 20:42:20] testing.INFO: New stock: 9  
[2026-10-20 20:42:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 20:42:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b60eccb41","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:22] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:42:22] testing.INFO: Old stock: 16  
[2026-10-20 20:42:22] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:42:22] testing.INFO: New stock: 10  
[2026-10-20 20:42:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b60eccb41"} 
[2026-10-20 20:42:24] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 20:42:24] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:42:24] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 20:42:24"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:42:24] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 20:42:25] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:42:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7b611663ac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:25] testing.INFO: Stock deduction for product: Test Product 18  
[2026-10-20 20:42:25] testing.INFO: Old stock: 7  
[2026-10-20 20:42:25] testing.INFO: Quantity deducted: 2  
[2026-10-20 20:42:25] testing.INFO: New stock: 5  
[2026-10-20 20:42:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b611663ac"} 
[2026-10-20 20:42:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b611bccbf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:25] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 20:42:25] testing.INFO: Old stock: 13  
[2026-10-20 20:42:25] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:42:25] testing.INFO: New stock: 8  
[2026-10-20 20:42:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b611bccbf"} 
[2026-10-20 20:42:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b611c394c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:25] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 20:42:25] testing.INFO: Old stock: 8  
[2026-10-20 20:42:25] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:42:25] testing.INFO: New stock: 4  
[2026-10-20 20:42:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b611c394c"} 
[2026-10-20 20:42:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7b611edee5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:26] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 20:42:26] testing.INFO: Old stock: 8  
[2026-10-20 20:42:26] testing.INFO: Quantity deducted: 6  
[2026-10-20 20:42:26] testing.INFO: New stock: 2  
[2026-10-20 20:42:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b611edee5"} 
[2026-10-20 20:42:26] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 20:42:26] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 20:42:26] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 20:42:26"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 20:42:26] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 20:42:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b61591e24","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:29] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 20:42:29] testing.INFO: Old stock: 10  
[2026-10-20 20:42:29] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:42:29] testing.INFO: New stock: 6  
[2026-10-20 20:42:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b61591e24"} 
[2026-10-20 20:42:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b615d8647","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:29] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 20:42:29] testing.INFO: Old stock: 10  
[2026-10-20 20:42:29] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:42:29] testing.INFO: New stock: 5  
[2026-10-20 20:42:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b615d8647"} 
[2026-10-20 20:42:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b6163661f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:30] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 20:42:30] testing.INFO: Old stock: 10  
[2026-10-20 20:42:30] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:42:30] testing.INFO: New stock: 6  
[2026-10-20 20:42:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b6163661f"} 
[2026-10-20 20:42:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7b616a7221","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:30] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 20:42:30] testing.INFO: Old stock: 5  
[2026-10-20 20:42:30] testing.INFO: Quantity deducted: 4  
[2026-10-20 20:42:30] testing.INFO: New stock: 1  
[2026-10-20 20:42:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b616a7221"} 
[2026-10-20 20:42:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b616ecc9f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:31] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 20:42:31] testing.INFO: Old stock: 10  
[2026-10-20 20:42:31] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:42:31] testing.INFO: New stock: 5  
[2026-10-20 20:42:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b616ecc9f"} 
[2026-10-20 20:42:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b6175afed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:31] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 20:42:31] testing.INFO: Old stock: 12  
[2026-10-20 20:42:31] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:42:31] testing.INFO: New stock: 7  
[2026-10-20 20:42:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b6175afed"} 
[2026-10-20 20:42:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7b6179846a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 20:42:31] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 20:42:31] testing.INFO: Old stock: 12  
[2026-10-20 20:42:31] testing.INFO: Quantity deducted: 5  
[2026-10-20 20:42:31] testing.INFO: New stock: 7  
[2026-10-20 20:42:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7b6179846a"} 
[2026-10-20 20:42:42] local.ERROR: SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'product_batch_id' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: alter table `stock_adjustments` add `product_batch_id` bigint unsigned null after `product_id`) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S21): SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'product_batch_id' (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: alter table `stock_adjustments` add `product_batch_id` bigint unsigned null after `product_id`) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `st...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `st...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `st...')
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(494): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->table('stock_adjustmen...', Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_20_000001_create_stock_batches_table.php(35): Illuminate/Support/Facades/Facade::__callStatic('table', Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_20_0000...', Object(Closure))
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_20_0000...', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 17, false)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S21): SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name 'product_batch_id' at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('alter table `st...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `st...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `st...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `st...')
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(494): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->table('stock_adjustmen...', Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_20_000001_create_stock_batches_table.php(35): Illuminate/Support/Facades/Facade::__callStatic('table', Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_20_0000...', Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_20_0000...', Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 17, false)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-10-20 20:43:58] local.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.stock_batches' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select `id`, `product_id`, `batch_no`, `expiry_date`, `quantity_remaining` from `stock_batches` where `quantity_remaining` > 0 and `stock_batches`.`product_id` in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23) order by CASE WHEN expiry_date IS NULL THEN 1 ELSE 0 END, `expiry_date` asc, `id` asc) {"userId":1,"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.stock_batches' doesn't exist (Connection: mysql, Host: localhost, Port: 3306, Database: area25, SQL: select `id`, `product_id`, `batch_no`, `expiry_date`, `quantity_remaining` from `stock_batches` where `quantity_remaining` > 0 and `stock_batches`.`product_id` in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23) order by CASE WHEN expiry_date IS NULL THEN 1 ELSE 0 END, `expiry_date` asc, `id` asc) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select `id`, `p...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select `id`, `p...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select `id`, `p...', Array, true)
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(212): Illuminate/Database/Eloquent/Builder->get(Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(175): Illuminate/Database/Eloquent/Relations/Relation->get()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(950): Illuminate/Database/Eloquent/Relations/Relation->getEager()
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(919): Illuminate/Database/Eloquent/Builder->eagerLoadRelation(Array, 'inStockBatches', Object(Closure))
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(885): Illuminate/Database/Eloquent/Builder->eagerLoadRelations(Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/StockAdjustmentController.php(71): Illuminate/Database/Eloquent/Builder->get()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->create(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('create', Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'create')
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'create_stock_ad...')
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#68 {main}

[previous exception] [object] (PDOException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'area25.stock_batches' doesn't exist at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:420)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): PDO->prepare('select `id`, `p...')
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('select `id`, `p...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('select `id`, `p...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate/Database/Connection->run('select `id`, `p...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3438): Illuminate/Database/Connection->select('select `id`, `p...', Array, true)
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3423): Illuminate/Database/Query/Builder->runSelect()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4013): Illuminate/Database/Query/Builder->Illuminate/Database/Query/{closure}()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3422): Illuminate/Database/Query/Builder->onceWithColumns(Array, Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate/Database/Query/Builder->get(Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate/Database/Eloquent/Builder->getModels(Array)
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(212): Illuminate/Database/Eloquent/Builder->get(Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/Relation.php(175): Illuminate/Database/Eloquent/Relations/Relation->get()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(950): Illuminate/Database/Eloquent/Relations/Relation->getEager()
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(919): Illuminate/Database/Eloquent/Builder->eagerLoadRelation(Array, 'inStockBatches', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(885): Illuminate/Database/Eloquent/Builder->eagerLoadRelations(Array)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/StockAdjustmentController.php(71): Illuminate/Database/Eloquent/Builder->get()
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/StockAdjustmentController->create(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('create', Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/StockAdjustmentController), 'create')
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'create_stock_ad...')
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#68 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/public/index.php(20): Illuminate/Foundation/Application->handleRequest(Object(Illuminate/Http/Request))
#69 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/resources/server.php(23): require_once('C://Users//Solomo...')
#70 {main}
"} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7bb1a63660","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:03:54] testing.INFO: Old stock: 10  
[2026-10-20 21:03:54] testing.INFO: Quantity deducted: 3  
[2026-10-20 21:03:54] testing.INFO: New stock: 7  
[2026-10-20 21:03:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1a63660"} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7bb1a7d8eb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:54] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:03:54] testing.INFO: Old stock: 10  
[2026-10-20 21:03:54] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:54] testing.INFO: New stock: 8  
[2026-10-20 21:03:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1a7d8eb"} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7bb1a912e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7bb1aa0742","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7bb1ab63e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1ac4af1","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 21:03:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1ad3909","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1b0634d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:55] testing.INFO: New stock: 8  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1b0634d"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1b256a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:55] testing.INFO: New stock: 8  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1b256a4"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1b441eb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:55] testing.INFO: New stock: 8  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1b441eb"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1b5cfe9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:03:55] testing.INFO: Old stock: 3  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:55] testing.INFO: New stock: 1  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1b5cfe9"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1b8c09c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:55] testing.INFO: New stock: 8  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1b8c09c"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:55] testing.INFO: New stock: 8  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:03:55] testing.INFO: New stock: 9  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:03:00+02:00"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:03:55] testing.INFO: New stock: 9  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:03:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T21:03:55+02:00"}} 
[2026-10-20 21:03:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:03:55] testing.INFO: Old stock: 10  
[2026-10-20 21:03:55] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:03:55] testing.INFO: New stock: 9  
[2026-10-20 21:03:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:03:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:03:55+02:00"}} 
[2026-10-20 21:03:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:03:56+02:00"}} 
[2026-10-20 21:03:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:03:56+02:00"}} 
[2026-10-20 21:03:56] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 21:03:56] testing.INFO: Old stock: 5  
[2026-10-20 21:03:56] testing.INFO: Quantity deducted: 3  
[2026-10-20 21:03:56] testing.INFO: New stock: 2  
[2026-10-20 21:03:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:03:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:03:56+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 21:03:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:03:56+02:00"}} 
[2026-10-20 21:03:56] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 21:03:56] testing.INFO: Old stock: 10  
[2026-10-20 21:03:56] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:03:56] testing.INFO: New stock: 9  
[2026-10-20 21:03:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:03:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7bb1d78a61","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:57] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:03:57] testing.INFO: Old stock: 16  
[2026-10-20 21:03:57] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:03:57] testing.INFO: New stock: 10  
[2026-10-20 21:03:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1d78a61"} 
[2026-10-20 21:03:58] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 21:03:58] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:03:58] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 21:03:58"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:03:58] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 21:03:58] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:03:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bb1eeae4d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:58] testing.INFO: Stock deduction for product: Test Product 18  
[2026-10-20 21:03:58] testing.INFO: Old stock: 7  
[2026-10-20 21:03:58] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:03:58] testing.INFO: New stock: 5  
[2026-10-20 21:03:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1eeae4d"} 
[2026-10-20 21:03:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bb1f4076c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:59] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 21:03:59] testing.INFO: Old stock: 13  
[2026-10-20 21:03:59] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:03:59] testing.INFO: New stock: 8  
[2026-10-20 21:03:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1f4076c"} 
[2026-10-20 21:03:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bb1f47da7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:59] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 21:03:59] testing.INFO: Old stock: 8  
[2026-10-20 21:03:59] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:03:59] testing.INFO: New stock: 4  
[2026-10-20 21:03:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1f47da7"} 
[2026-10-20 21:03:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7bb1f6d114","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:03:59] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 21:03:59] testing.INFO: Old stock: 8  
[2026-10-20 21:03:59] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:03:59] testing.INFO: New stock: 2  
[2026-10-20 21:03:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb1f6d114"} 
[2026-10-20 21:03:59] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:03:59] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:03:59] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 21:03:59"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:03:59] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 21:04:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bb2152425","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:01] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:04:01] testing.INFO: Old stock: 10  
[2026-10-20 21:04:01] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:04:01] testing.INFO: New stock: 6  
[2026-10-20 21:04:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb2152425"} 
[2026-10-20 21:04:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bb216c431","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:01] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:04:01] testing.INFO: Old stock: 10  
[2026-10-20 21:04:01] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:04:01] testing.INFO: New stock: 5  
[2026-10-20 21:04:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb216c431"} 
[2026-10-20 21:04:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bb21865ab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:01] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 21:04:01] testing.INFO: Old stock: 10  
[2026-10-20 21:04:01] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:04:01] testing.INFO: New stock: 6  
[2026-10-20 21:04:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb21865ab"} 
[2026-10-20 21:04:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bb21abb60","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:01] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 21:04:01] testing.INFO: Old stock: 5  
[2026-10-20 21:04:01] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:04:01] testing.INFO: New stock: 1  
[2026-10-20 21:04:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb21abb60"} 
[2026-10-20 21:04:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bb21c6547","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:01] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 21:04:01] testing.INFO: Old stock: 10  
[2026-10-20 21:04:01] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:04:01] testing.INFO: New stock: 5  
[2026-10-20 21:04:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb21c6547"} 
[2026-10-20 21:04:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bb21eb4ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:01] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 21:04:01] testing.INFO: Old stock: 12  
[2026-10-20 21:04:01] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:04:01] testing.INFO: New stock: 7  
[2026-10-20 21:04:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb21eb4ef"} 
[2026-10-20 21:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bb220d609","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:04:02] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 21:04:02] testing.INFO: Old stock: 12  
[2026-10-20 21:04:02] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:04:02] testing.INFO: New stock: 7  
[2026-10-20 21:04:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bb220d609"} 
[2026-10-20 21:07:35] local.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"invoice_no":"INV-1792523254912845","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":13,"product_id":13,"name":"Cetirizine 10mg Tablets","sku":"PRD-00013","price":"2800.00","selling_price":"2800.00","purchase_price":"1500.00","quantity":1,"subtotal":2800,"product":{"id":13,"name":"Cetirizine 10mg Tablets","business_location":"EDUC Pharmacy (BL0001)","unit_id":4,"category_id":5,"brand_id":4,"supplier_id":1,"purchase_price":"1500.00","last_purchase_price":"1500.00","selling_price":"2800.00","current_stock":55,"stock":"55.00","product_type":"Single","tax":null,"sku":"PRD-00013","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2029-04-20","last_purchase_date":"2026-10-20","created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z","expired_stock":0,"brand":{"id":4,"name":"Cipla","note":null,"created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z"},"category":{"id":5,"name":"Cough & Cold","category_code":null,"description":null,"created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z"},"_serverStock":55}}],"payment_method":"cash"}} 
[2026-10-20 21:07:35] local.INFO: Stock deduction for product: Cetirizine 10mg Tablets  
[2026-10-20 21:07:35] local.INFO: Old stock: 55.00  
[2026-10-20 21:07:35] local.INFO: Quantity deducted: 1  
[2026-10-20 21:07:35] local.INFO: New stock: 54  
[2026-10-20 21:07:35] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792523254912845"} 
[2026-10-20 21:11:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7bcf4d59d0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:11:48] testing.INFO: Old stock: 10  
[2026-10-20 21:11:48] testing.INFO: Quantity deducted: 3  
[2026-10-20 21:11:48] testing.INFO: New stock: 7  
[2026-10-20 21:11:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf4d59d0"} 
[2026-10-20 21:11:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7bcf4efa83","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:11:49] testing.INFO: Old stock: 10  
[2026-10-20 21:11:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:49] testing.INFO: New stock: 8  
[2026-10-20 21:11:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf4efa83"} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7bcf50e8b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7bcf51cec6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7bcf52ac8e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf539044","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf546d62","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf56bb75","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:11:49] testing.INFO: Old stock: 10  
[2026-10-20 21:11:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:49] testing.INFO: New stock: 8  
[2026-10-20 21:11:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf56bb75"} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf58c326","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:11:49] testing.INFO: Old stock: 10  
[2026-10-20 21:11:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:49] testing.INFO: New stock: 8  
[2026-10-20 21:11:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf58c326"} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf5a909f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:11:49] testing.INFO: Old stock: 10  
[2026-10-20 21:11:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:49] testing.INFO: New stock: 8  
[2026-10-20 21:11:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf5a909f"} 
[2026-10-20 21:11:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf5c0b9a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:49] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:11:49] testing.INFO: Old stock: 3  
[2026-10-20 21:11:49] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:49] testing.INFO: New stock: 1  
[2026-10-20 21:11:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf5c0b9a"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf607736","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 21:11:50] testing.INFO: Old stock: 10  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:50] testing.INFO: New stock: 8  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf607736"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:11:50] testing.INFO: Old stock: 10  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:50] testing.INFO: New stock: 8  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:11:50] testing.INFO: Old stock: 10  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:11:50] testing.INFO: New stock: 9  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:11:00+02:00"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:11:50] testing.INFO: Old stock: 10  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:11:50] testing.INFO: New stock: 9  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T21:11:50+02:00"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:11:50] testing.INFO: Old stock: 10  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:11:50] testing.INFO: New stock: 9  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:11:50+02:00"}} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:11:50+02:00"}} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:11:50+02:00"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 21:11:50] testing.INFO: Old stock: 5  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 3  
[2026-10-20 21:11:50] testing.INFO: New stock: 2  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:11:50+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 21:11:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:11:50+02:00"}} 
[2026-10-20 21:11:50] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 21:11:50] testing.INFO: Old stock: 10  
[2026-10-20 21:11:50] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:11:50] testing.INFO: New stock: 9  
[2026-10-20 21:11:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:11:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7bcf801687","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:11:52] testing.INFO: Old stock: 16  
[2026-10-20 21:11:52] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:11:52] testing.INFO: New stock: 10  
[2026-10-20 21:11:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf801687"} 
[2026-10-20 21:11:52] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 21:11:52] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:11:52] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 21:11:52"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:11:52] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 21:11:53] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:11:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7bcf974867","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:53] testing.INFO: Stock deduction for product: Test Product 18  
[2026-10-20 21:11:53] testing.INFO: Old stock: 7  
[2026-10-20 21:11:53] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:11:53] testing.INFO: New stock: 5  
[2026-10-20 21:11:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf974867"} 
[2026-10-20 21:11:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bcf9c47e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:53] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 21:11:53] testing.INFO: Old stock: 13  
[2026-10-20 21:11:53] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:11:53] testing.INFO: New stock: 8  
[2026-10-20 21:11:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf9c47e9"} 
[2026-10-20 21:11:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bcf9cc4f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:53] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 21:11:53] testing.INFO: Old stock: 8  
[2026-10-20 21:11:53] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:11:53] testing.INFO: New stock: 4  
[2026-10-20 21:11:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf9cc4f0"} 
[2026-10-20 21:11:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7bcf9f2d25","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:54] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 21:11:54] testing.INFO: Old stock: 8  
[2026-10-20 21:11:54] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:11:54] testing.INFO: New stock: 2  
[2026-10-20 21:11:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcf9f2d25"} 
[2026-10-20 21:11:54] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:11:54] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:11:54] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 21:11:54"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:11:54] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 21:11:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bcfbf3730","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:56] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:11:56] testing.INFO: Old stock: 10  
[2026-10-20 21:11:56] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:11:56] testing.INFO: New stock: 6  
[2026-10-20 21:11:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfbf3730"} 
[2026-10-20 21:11:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bcfc1a532","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:56] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:11:56] testing.INFO: Old stock: 10  
[2026-10-20 21:11:56] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:11:56] testing.INFO: New stock: 5  
[2026-10-20 21:11:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfc1a532"} 
[2026-10-20 21:11:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bcfc37f5e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:56] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 21:11:56] testing.INFO: Old stock: 10  
[2026-10-20 21:11:56] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:11:56] testing.INFO: New stock: 6  
[2026-10-20 21:11:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfc37f5e"} 
[2026-10-20 21:11:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7bcfc62957","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:56] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 21:11:56] testing.INFO: Old stock: 5  
[2026-10-20 21:11:56] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:11:56] testing.INFO: New stock: 1  
[2026-10-20 21:11:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfc62957"} 
[2026-10-20 21:11:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bcfc80fba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:56] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 21:11:56] testing.INFO: Old stock: 10  
[2026-10-20 21:11:56] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:11:56] testing.INFO: New stock: 5  
[2026-10-20 21:11:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfc80fba"} 
[2026-10-20 21:11:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bcfccf8a9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:56] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 21:11:56] testing.INFO: Old stock: 12  
[2026-10-20 21:11:56] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:11:56] testing.INFO: New stock: 7  
[2026-10-20 21:11:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfccf8a9"} 
[2026-10-20 21:11:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7bcfd223a0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:11:57] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 21:11:57] testing.INFO: Old stock: 12  
[2026-10-20 21:11:57] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:11:57] testing.INFO: New stock: 7  
[2026-10-20 21:11:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7bcfd223a0"} 
[2026-10-20 21:13:49] local.INFO: Product Store - Request Data {"all_data":{"_token":"YugvWa4YTMg1jDRDnO6OYti9fYNFjUjyVjDhHgSe","name":"dacof","sku":null,"category_id":"1","brand_id":"1","unit_id":null,"purchase_price":"4000","selling_price":"6000","description":null,"purchase_quantity":"0","alert_quantity":"10","batch_no":"B121","expiry_date":"2026-10-21","supplier_id":"1"},"category_id":"1","brand_id":"1","supplier_id":"1"} 
[2026-10-20 21:13:49] local.INFO: Product Store - Validation Success {"validated_data":{"name":"dacof","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"4000","selling_price":"6000","sku":null,"alert_quantity":"10","expiry_date":"2026-10-21","batch_no":"B121","description":null,"purchase_quantity":"0"},"category_id_value":"1","brand_id_value":"1"} 
[2026-10-20 21:13:49] local.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"dacof","unit_id":null,"category_id":"1","brand_id":"1","supplier_id":"1","purchase_price":"4000","selling_price":"6000","sku":"PRD-00021","alert_quantity":"10","expiry_date":"2026-10-21","batch_no":"B121","description":null,"purchase_quantity":"0","business_location":"Laravel","product_type":"Single","current_stock":"0","last_purchase_price":"4000","last_purchase_date":"2026-10-20 21:13:49"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:13:49] local.INFO: Product Store - Product Created {"product_id":21,"product_name":"dacof","product_sku":"PRD-00021"} 
[2026-10-20 21:32:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7c1e43eb73","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:32:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:32:52] testing.INFO: Old stock: 16  
[2026-10-20 21:32:52] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:32:52] testing.INFO: New stock: 10  
[2026-10-20 21:32:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c1e43eb73"} 
[2026-10-20 21:32:56] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 21:32:56] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:32:56] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 21:32:56"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:32:56] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 21:33:00] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:33:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:33:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c1ee1f97f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:33:02] testing.INFO: Stock deduction for product: Test Product 18  
[2026-10-20 21:33:02] testing.INFO: Old stock: 7  
[2026-10-20 21:33:02] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:33:02] testing.INFO: New stock: 5  
[2026-10-20 21:33:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c1ee1f97f"} 
[2026-10-20 21:33:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7c1f01e2a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:33:04] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 21:33:04] testing.INFO: Old stock: 13  
[2026-10-20 21:33:04] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:33:04] testing.INFO: New stock: 8  
[2026-10-20 21:33:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c1f01e2a6"} 
[2026-10-20 21:33:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7c1f047722","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:33:04] testing.INFO: Stock deduction for product: Test Product 21  
[2026-10-20 21:33:04] testing.INFO: Old stock: 8  
[2026-10-20 21:33:04] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:33:04] testing.INFO: New stock: 4  
[2026-10-20 21:33:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c1f047722"} 
[2026-10-20 21:33:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7c1f13ba1f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:33:05] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 21:33:05] testing.INFO: Old stock: 8  
[2026-10-20 21:33:05] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:33:05] testing.INFO: New stock: 2  
[2026-10-20 21:33:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c1f13ba1f"} 
[2026-10-20 21:33:06] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:33:06] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:33:06] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 21:33:06"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:33:06] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 21:34:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7c22a3a0c0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:02] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:34:02] testing.INFO: Old stock: 10  
[2026-10-20 21:34:02] testing.INFO: Quantity deducted: 3  
[2026-10-20 21:34:02] testing.INFO: New stock: 7  
[2026-10-20 21:34:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c22a3a0c0"} 
[2026-10-20 21:34:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad7c22abe441","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:02] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:34:02] testing.INFO: Old stock: 10  
[2026-10-20 21:34:02] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:02] testing.INFO: New stock: 8  
[2026-10-20 21:34:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c22abe441"} 
[2026-10-20 21:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7c22b390a1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:03] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad7c22b8cf2f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad7c22be3ad1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c22c4503a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 21:34:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c22ca0428","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-20 21:34:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c22d960fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:05] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:34:05] testing.INFO: Old stock: 10  
[2026-10-20 21:34:05] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:05] testing.INFO: New stock: 8  
[2026-10-20 21:34:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c22d960fd"} 
[2026-10-20 21:34:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c22e7abd2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:34:06] testing.INFO: Old stock: 10  
[2026-10-20 21:34:06] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:06] testing.INFO: New stock: 8  
[2026-10-20 21:34:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c22e7abd2"} 
[2026-10-20 21:34:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c22f5c592","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:07] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:34:07] testing.INFO: Old stock: 10  
[2026-10-20 21:34:07] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:07] testing.INFO: New stock: 8  
[2026-10-20 21:34:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c22f5c592"} 
[2026-10-20 21:34:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c22fedb6d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:34:08] testing.INFO: Old stock: 3  
[2026-10-20 21:34:08] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:08] testing.INFO: New stock: 1  
[2026-10-20 21:34:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c22fedb6d"} 
[2026-10-20 21:34:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c231119c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:09] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-20 21:34:09] testing.INFO: Old stock: 10  
[2026-10-20 21:34:09] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:09] testing.INFO: New stock: 8  
[2026-10-20 21:34:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c231119c2"} 
[2026-10-20 21:34:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:09] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-20 21:34:09] testing.INFO: Old stock: 10  
[2026-10-20 21:34:09] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:09] testing.INFO: New stock: 8  
[2026-10-20 21:34:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:34:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-20 21:34:10] testing.INFO: Old stock: 10  
[2026-10-20 21:34:10] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:34:10] testing.INFO: New stock: 9  
[2026-10-20 21:34:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:34:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T19:34:00+02:00"}} 
[2026-10-20 21:34:10] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:34:10] testing.INFO: Old stock: 10  
[2026-10-20 21:34:10] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:34:10] testing.INFO: New stock: 9  
[2026-10-20 21:34:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:34:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T21:34:11+02:00"}} 
[2026-10-20 21:34:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:34:11] testing.INFO: Old stock: 10  
[2026-10-20 21:34:11] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:34:11] testing.INFO: New stock: 9  
[2026-10-20 21:34:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:34:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:34:11+02:00"}} 
[2026-10-20 21:34:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:34:12+02:00"}} 
[2026-10-20 21:34:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:34:12+02:00"}} 
[2026-10-20 21:34:12] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 21:34:12] testing.INFO: Old stock: 5  
[2026-10-20 21:34:12] testing.INFO: Quantity deducted: 3  
[2026-10-20 21:34:12] testing.INFO: New stock: 2  
[2026-10-20 21:34:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:34:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T21:34:13+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-20 21:34:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-20T18:34:13+02:00"}} 
[2026-10-20 21:34:14] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-20 21:34:14] testing.INFO: Old stock: 10  
[2026-10-20 21:34:14] testing.INFO: Quantity deducted: 1  
[2026-10-20 21:34:14] testing.INFO: New stock: 9  
[2026-10-20 21:34:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-20 21:34:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7c23d88068","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:21] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 21:34:21] testing.INFO: Old stock: 16  
[2026-10-20 21:34:21] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:34:21] testing.INFO: New stock: 10  
[2026-10-20 21:34:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c23d88068"} 
[2026-10-20 21:34:25] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-20 21:34:25] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:34:25] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-20 21:34:25"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:34:25] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-20 21:34:28] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-19"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad7c245da39a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:29] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-20 21:34:29] testing.INFO: Old stock: 7  
[2026-10-20 21:34:29] testing.INFO: Quantity deducted: 2  
[2026-10-20 21:34:29] testing.INFO: New stock: 5  
[2026-10-20 21:34:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c245da39a"} 
[2026-10-20 21:34:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7c247cd36e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:31] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 21:34:31] testing.INFO: Old stock: 13  
[2026-10-20 21:34:31] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:34:31] testing.INFO: New stock: 8  
[2026-10-20 21:34:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c247cd36e"} 
[2026-10-20 21:34:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7c248077dc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:32] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-20 21:34:32] testing.INFO: Old stock: 8  
[2026-10-20 21:34:32] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:34:32] testing.INFO: New stock: 4  
[2026-10-20 21:34:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c248077dc"} 
[2026-10-20 21:34:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad7c2492fb0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:33] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-20 21:34:33] testing.INFO: Old stock: 8  
[2026-10-20 21:34:33] testing.INFO: Quantity deducted: 6  
[2026-10-20 21:34:33] testing.INFO: New stock: 2  
[2026-10-20 21:34:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c2492fb0d"} 
[2026-10-20 21:34:34] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-20 21:34:34] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-20 21:34:34] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-20 21:34:34"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-20 21:34:34] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-20 21:34:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7c25843ec8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:48] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-20 21:34:48] testing.INFO: Old stock: 10  
[2026-10-20 21:34:48] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:34:48] testing.INFO: New stock: 6  
[2026-10-20 21:34:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c25843ec8"} 
[2026-10-20 21:34:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7c258de9c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:49] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-20 21:34:49] testing.INFO: Old stock: 10  
[2026-10-20 21:34:49] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:34:49] testing.INFO: New stock: 5  
[2026-10-20 21:34:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c258de9c1"} 
[2026-10-20 21:34:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7c25989183","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:49] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-20 21:34:49] testing.INFO: Old stock: 10  
[2026-10-20 21:34:49] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:34:49] testing.INFO: New stock: 6  
[2026-10-20 21:34:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c25989183"} 
[2026-10-20 21:34:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad7c25a5b1f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:50] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-20 21:34:50] testing.INFO: Old stock: 5  
[2026-10-20 21:34:50] testing.INFO: Quantity deducted: 4  
[2026-10-20 21:34:50] testing.INFO: New stock: 1  
[2026-10-20 21:34:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c25a5b1f3"} 
[2026-10-20 21:34:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7c25ae8620","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:51] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-20 21:34:51] testing.INFO: Old stock: 10  
[2026-10-20 21:34:51] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:34:51] testing.INFO: New stock: 5  
[2026-10-20 21:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c25ae8620"} 
[2026-10-20 21:34:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7c25bbd708","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:51] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-20 21:34:51] testing.INFO: Old stock: 12  
[2026-10-20 21:34:51] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:34:51] testing.INFO: New stock: 7  
[2026-10-20 21:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c25bbd708"} 
[2026-10-20 21:34:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad7c25c4f702","payment_method":"cash","payment_status":"paid"}} 
[2026-10-20 21:34:52] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-20 21:34:52] testing.INFO: Old stock: 12  
[2026-10-20 21:34:52] testing.INFO: Quantity deducted: 5  
[2026-10-20 21:34:52] testing.INFO: New stock: 7  
[2026-10-20 21:34:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad7c25c4f702"} 
[2026-10-21 05:07:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c5617f4e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:02] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:07:02] testing.INFO: Old stock: 70  
[2026-10-21 05:07:02] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:02] testing.INFO: New stock: 65  
[2026-10-21 05:07:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c5617f4e"} 
[2026-10-21 05:07:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:07:02] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:07:02] testing.INFO: Old stock: 62  
[2026-10-21 05:07:02] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:02] testing.INFO: New stock: 60  
[2026-10-21 05:07:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:07:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82c564fba5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:02] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:07:02] testing.INFO: Old stock: 59  
[2026-10-21 05:07:02] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:07:02] testing.INFO: New stock: 55  
[2026-10-21 05:07:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c564fba5"} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82c64429ba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:07:16] testing.INFO: Old stock: 10  
[2026-10-21 05:07:16] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:07:16] testing.INFO: New stock: 7  
[2026-10-21 05:07:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c64429ba"} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad82c64574c7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:07:16] testing.INFO: Old stock: 10  
[2026-10-21 05:07:16] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:16] testing.INFO: New stock: 8  
[2026-10-21 05:07:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c64574c7"} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82c646c36b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82c64797c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad82c6487fb3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c6495355","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c64a33e7","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c64c8460","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:07:16] testing.INFO: Old stock: 10  
[2026-10-21 05:07:16] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:16] testing.INFO: New stock: 8  
[2026-10-21 05:07:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c64c8460"} 
[2026-10-21 05:07:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c64e66c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:16] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:07:16] testing.INFO: Old stock: 10  
[2026-10-21 05:07:16] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:16] testing.INFO: New stock: 8  
[2026-10-21 05:07:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c64e66c4"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c650f8b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:07:17] testing.INFO: Old stock: 10  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:17] testing.INFO: New stock: 8  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c650f8b2"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c6526f31","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:07:17] testing.INFO: Old stock: 3  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:17] testing.INFO: New stock: 1  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6526f31"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c6555122","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 05:07:17] testing.INFO: Old stock: 10  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:17] testing.INFO: New stock: 8  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6555122"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:07:17] testing.INFO: Old stock: 10  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:17] testing.INFO: New stock: 8  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:07:17] testing.INFO: Old stock: 10  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:07:17] testing.INFO: New stock: 9  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:07:00+02:00"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:07:17] testing.INFO: Old stock: 10  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:07:17] testing.INFO: New stock: 9  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T05:07:17+02:00"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:07:17] testing.INFO: Old stock: 10  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:07:17] testing.INFO: New stock: 9  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:07:17+02:00"}} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:07:17+02:00"}} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:07:17+02:00"}} 
[2026-10-21 05:07:17] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:07:17] testing.INFO: Old stock: 5  
[2026-10-21 05:07:17] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:07:17] testing.INFO: New stock: 2  
[2026-10-21 05:07:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:07:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:07:18+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 05:07:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T02:07:18+02:00"}} 
[2026-10-21 05:07:18] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 05:07:18] testing.INFO: Old stock: 10  
[2026-10-21 05:07:18] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:07:18] testing.INFO: New stock: 9  
[2026-10-21 05:07:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:07:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad82c676f89f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:19] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:07:19] testing.INFO: Old stock: 16  
[2026-10-21 05:07:19] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:07:19] testing.INFO: New stock: 10  
[2026-10-21 05:07:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c676f89f"} 
[2026-10-21 05:07:20] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 05:07:20] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:07:20] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 05:07:20"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:07:20] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 05:07:20] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:07:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82c68cbddc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:20] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 05:07:20] testing.INFO: Old stock: 7  
[2026-10-21 05:07:20] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:20] testing.INFO: New stock: 5  
[2026-10-21 05:07:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c68cbddc"} 
[2026-10-21 05:07:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c69219e1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:21] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:07:21] testing.INFO: Old stock: 13  
[2026-10-21 05:07:21] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:21] testing.INFO: New stock: 8  
[2026-10-21 05:07:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c69219e1"} 
[2026-10-21 05:07:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82c6929553","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:21] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:07:21] testing.INFO: Old stock: 8  
[2026-10-21 05:07:21] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:07:21] testing.INFO: New stock: 4  
[2026-10-21 05:07:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6929553"} 
[2026-10-21 05:07:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad82c69508bd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:21] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 05:07:21] testing.INFO: Old stock: 8  
[2026-10-21 05:07:21] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:07:21] testing.INFO: New stock: 2  
[2026-10-21 05:07:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c69508bd"} 
[2026-10-21 05:07:21] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:07:21] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:07:21] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 05:07:21"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:07:21] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 05:07:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c6b9aabe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:23] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:07:23] testing.INFO: Old stock: 70  
[2026-10-21 05:07:23] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:23] testing.INFO: New stock: 65  
[2026-10-21 05:07:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6b9aabe"} 
[2026-10-21 05:07:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:07:23] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:07:23] testing.INFO: Old stock: 62  
[2026-10-21 05:07:23] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:07:23] testing.INFO: New stock: 60  
[2026-10-21 05:07:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:07:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82c6bbc89c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:23] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:07:23] testing.INFO: Old stock: 59  
[2026-10-21 05:07:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:07:23] testing.INFO: New stock: 55  
[2026-10-21 05:07:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6bbc89c"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82c6c16845","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:07:24] testing.INFO: Old stock: 10  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:07:24] testing.INFO: New stock: 6  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6c16845"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c6c2d1a7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:07:24] testing.INFO: Old stock: 10  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:24] testing.INFO: New stock: 5  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6c2d1a7"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82c6c4d5be","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:07:24] testing.INFO: Old stock: 10  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:07:24] testing.INFO: New stock: 6  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6c4d5be"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82c6c7d216","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:07:24] testing.INFO: Old stock: 5  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:07:24] testing.INFO: New stock: 1  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6c7d216"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c6ca5be9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 05:07:24] testing.INFO: Old stock: 10  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:24] testing.INFO: New stock: 5  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6ca5be9"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c6cccf41","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 05:07:24] testing.INFO: Old stock: 12  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:24] testing.INFO: New stock: 7  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6cccf41"} 
[2026-10-21 05:07:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82c6ce1973","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:07:24] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 05:07:24] testing.INFO: Old stock: 12  
[2026-10-21 05:07:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:07:24] testing.INFO: New stock: 7  
[2026-10-21 05:07:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82c6ce1973"} 
[2026-10-21 05:14:01] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 05:14:29] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82e16715b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:14:30] testing.INFO: Old stock: 10  
[2026-10-21 05:14:30] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:14:30] testing.INFO: New stock: 7  
[2026-10-21 05:14:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e16715b7"} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad82e16853ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:30] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:14:30] testing.INFO: Old stock: 10  
[2026-10-21 05:14:30] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:30] testing.INFO: New stock: 8  
[2026-10-21 05:14:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e16853ea"} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82e1697c8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82e16a54ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad82e16b4997","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e16c108d","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:14:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e16dab9b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e1710300","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:31] testing.INFO: New stock: 8  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1710300"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e1730877","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:31] testing.INFO: New stock: 8  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1730877"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e174dfb3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:31] testing.INFO: New stock: 8  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e174dfb3"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e1766591","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:14:31] testing.INFO: Old stock: 3  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:31] testing.INFO: New stock: 1  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1766591"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e17948cc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:31] testing.INFO: New stock: 8  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e17948cc"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:31] testing.INFO: New stock: 8  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:14:31] testing.INFO: New stock: 9  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:14:00+02:00"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:14:31] testing.INFO: New stock: 9  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:14:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T05:14:31+02:00"}} 
[2026-10-21 05:14:31] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:14:31] testing.INFO: Old stock: 10  
[2026-10-21 05:14:31] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:14:31] testing.INFO: New stock: 9  
[2026-10-21 05:14:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:14:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:14:32+02:00"}} 
[2026-10-21 05:14:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:14:32+02:00"}} 
[2026-10-21 05:14:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:14:32+02:00"}} 
[2026-10-21 05:14:32] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:14:32] testing.INFO: Old stock: 5  
[2026-10-21 05:14:32] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:14:32] testing.INFO: New stock: 2  
[2026-10-21 05:14:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:14:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:14:32+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 05:14:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T02:14:32+02:00"}} 
[2026-10-21 05:14:32] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 05:14:32] testing.INFO: Old stock: 10  
[2026-10-21 05:14:32] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:14:32] testing.INFO: New stock: 9  
[2026-10-21 05:14:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:14:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad82e1987866","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:33] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:14:33] testing.INFO: Old stock: 16  
[2026-10-21 05:14:33] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:14:33] testing.INFO: New stock: 10  
[2026-10-21 05:14:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1987866"} 
[2026-10-21 05:14:34] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 05:14:34] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:14:34] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 05:14:34"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:14:34] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 05:14:34] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:14:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82e1ae10ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:34] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 05:14:34] testing.INFO: Old stock: 7  
[2026-10-21 05:14:34] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:34] testing.INFO: New stock: 5  
[2026-10-21 05:14:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1ae10ad"} 
[2026-10-21 05:14:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82e1b3b03e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:35] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:14:35] testing.INFO: Old stock: 13  
[2026-10-21 05:14:35] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:14:35] testing.INFO: New stock: 8  
[2026-10-21 05:14:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1b3b03e"} 
[2026-10-21 05:14:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82e1b4299b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:35] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:14:35] testing.INFO: Old stock: 8  
[2026-10-21 05:14:35] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:14:35] testing.INFO: New stock: 4  
[2026-10-21 05:14:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1b4299b"} 
[2026-10-21 05:14:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad82e1b69865","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:35] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 05:14:35] testing.INFO: Old stock: 8  
[2026-10-21 05:14:35] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:14:35] testing.INFO: New stock: 2  
[2026-10-21 05:14:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1b69865"} 
[2026-10-21 05:14:35] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:14:35] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:14:35] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 05:14:35"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:14:35] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 05:14:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82e1dbc749","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:37] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:14:37] testing.INFO: Old stock: 70  
[2026-10-21 05:14:37] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:14:37] testing.INFO: New stock: 65  
[2026-10-21 05:14:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1dbc749"} 
[2026-10-21 05:14:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:14:37] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:14:37] testing.INFO: Old stock: 62  
[2026-10-21 05:14:37] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:14:37] testing.INFO: New stock: 60  
[2026-10-21 05:14:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:14:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82e1ddd071","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:37] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:14:37] testing.INFO: Old stock: 59  
[2026-10-21 05:14:37] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:14:37] testing.INFO: New stock: 55  
[2026-10-21 05:14:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1ddd071"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82e1e35eb2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:14:38] testing.INFO: Old stock: 10  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:14:38] testing.INFO: New stock: 6  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1e35eb2"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82e1e4f1da","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:14:38] testing.INFO: Old stock: 10  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:14:38] testing.INFO: New stock: 5  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1e4f1da"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82e1e66ffb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:14:38] testing.INFO: Old stock: 10  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:14:38] testing.INFO: New stock: 6  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1e66ffb"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82e1e88068","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:14:38] testing.INFO: Old stock: 5  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:14:38] testing.INFO: New stock: 1  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1e88068"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82e1ea0399","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 05:14:38] testing.INFO: Old stock: 10  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:14:38] testing.INFO: New stock: 5  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1ea0399"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82e1ec264f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 05:14:38] testing.INFO: Old stock: 12  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:14:38] testing.INFO: New stock: 7  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1ec264f"} 
[2026-10-21 05:14:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82e1ed8637","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:14:38] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 05:14:38] testing.INFO: Old stock: 12  
[2026-10-21 05:14:38] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:14:38] testing.INFO: New stock: 7  
[2026-10-21 05:14:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82e1ed8637"} 
[2026-10-21 05:21:30] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 05:21:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82fbce1ecb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:32] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:21:32] testing.INFO: Old stock: 10  
[2026-10-21 05:21:32] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:21:32] testing.INFO: New stock: 7  
[2026-10-21 05:21:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbce1ecb"} 
[2026-10-21 05:21:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad82fbd1d6e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:33] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:21:33] testing.INFO: Old stock: 10  
[2026-10-21 05:21:33] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:33] testing.INFO: New stock: 8  
[2026-10-21 05:21:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbd1d6e9"} 
[2026-10-21 05:21:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82fbd49967","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:33] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad82fbd6e0f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad82fbd92926","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbdbd01b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:21:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbde711a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:21:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbe5e0ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:21:34] testing.INFO: Old stock: 10  
[2026-10-21 05:21:34] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:34] testing.INFO: New stock: 8  
[2026-10-21 05:21:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbe5e0ef"} 
[2026-10-21 05:21:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbeaa1de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:21:34] testing.INFO: Old stock: 10  
[2026-10-21 05:21:34] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:34] testing.INFO: New stock: 8  
[2026-10-21 05:21:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbeaa1de"} 
[2026-10-21 05:21:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbef19dc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:21:35] testing.INFO: Old stock: 10  
[2026-10-21 05:21:35] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:35] testing.INFO: New stock: 8  
[2026-10-21 05:21:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbef19dc"} 
[2026-10-21 05:21:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbf39c71","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:35] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:21:35] testing.INFO: Old stock: 3  
[2026-10-21 05:21:35] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:35] testing.INFO: New stock: 1  
[2026-10-21 05:21:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbf39c71"} 
[2026-10-21 05:21:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fbfb9956","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:35] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 05:21:35] testing.INFO: Old stock: 10  
[2026-10-21 05:21:35] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:35] testing.INFO: New stock: 8  
[2026-10-21 05:21:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fbfb9956"} 
[2026-10-21 05:21:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:36] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:21:36] testing.INFO: Old stock: 10  
[2026-10-21 05:21:36] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:36] testing.INFO: New stock: 8  
[2026-10-21 05:21:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:21:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:21:36] testing.INFO: Old stock: 10  
[2026-10-21 05:21:36] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:21:36] testing.INFO: New stock: 9  
[2026-10-21 05:21:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:21:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:21:00+02:00"}} 
[2026-10-21 05:21:36] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:21:36] testing.INFO: Old stock: 10  
[2026-10-21 05:21:36] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:21:36] testing.INFO: New stock: 9  
[2026-10-21 05:21:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:21:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T05:21:36+02:00"}} 
[2026-10-21 05:21:36] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:21:36] testing.INFO: Old stock: 10  
[2026-10-21 05:21:36] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:21:36] testing.INFO: New stock: 9  
[2026-10-21 05:21:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:21:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:21:37+02:00"}} 
[2026-10-21 05:21:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:21:37+02:00"}} 
[2026-10-21 05:21:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:21:37+02:00"}} 
[2026-10-21 05:21:37] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:21:37] testing.INFO: Old stock: 5  
[2026-10-21 05:21:37] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:21:37] testing.INFO: New stock: 2  
[2026-10-21 05:21:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:21:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:21:37+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 05:21:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T02:21:38+02:00"}} 
[2026-10-21 05:21:38] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 05:21:38] testing.INFO: Old stock: 10  
[2026-10-21 05:21:38] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:21:38] testing.INFO: New stock: 9  
[2026-10-21 05:21:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:21:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad82fc5c76ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:41] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:21:41] testing.INFO: Old stock: 16  
[2026-10-21 05:21:41] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:21:41] testing.INFO: New stock: 10  
[2026-10-21 05:21:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fc5c76ad"} 
[2026-10-21 05:21:43] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 05:21:43] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:21:43] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 05:21:43"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:21:43] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 05:21:45] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:21:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad82fca49f2c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:46] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 05:21:46] testing.INFO: Old stock: 7  
[2026-10-21 05:21:46] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:46] testing.INFO: New stock: 5  
[2026-10-21 05:21:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fca49f2c"} 
[2026-10-21 05:21:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82fcb49eb2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:47] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:21:47] testing.INFO: Old stock: 13  
[2026-10-21 05:21:47] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:21:47] testing.INFO: New stock: 8  
[2026-10-21 05:21:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fcb49eb2"} 
[2026-10-21 05:21:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82fcb5e58b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:47] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:21:47] testing.INFO: Old stock: 8  
[2026-10-21 05:21:47] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:21:47] testing.INFO: New stock: 4  
[2026-10-21 05:21:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fcb5e58b"} 
[2026-10-21 05:21:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad82fcbb9d00","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:47] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 05:21:47] testing.INFO: Old stock: 8  
[2026-10-21 05:21:47] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:21:47] testing.INFO: New stock: 2  
[2026-10-21 05:21:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fcbb9d00"} 
[2026-10-21 05:21:48] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:21:48] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:21:48] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 05:21:48"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:21:48] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 05:21:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82fd1707bf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:53] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:21:53] testing.INFO: Old stock: 70  
[2026-10-21 05:21:53] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:21:53] testing.INFO: New stock: 65  
[2026-10-21 05:21:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd1707bf"} 
[2026-10-21 05:21:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:21:53] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:21:53] testing.INFO: Old stock: 62  
[2026-10-21 05:21:53] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:21:53] testing.INFO: New stock: 60  
[2026-10-21 05:21:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:21:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82fd1c6dac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:53] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:21:53] testing.INFO: Old stock: 59  
[2026-10-21 05:21:53] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:21:53] testing.INFO: New stock: 55  
[2026-10-21 05:21:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd1c6dac"} 
[2026-10-21 05:21:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82fd292fc3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:54] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:21:54] testing.INFO: Old stock: 10  
[2026-10-21 05:21:54] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:21:54] testing.INFO: New stock: 6  
[2026-10-21 05:21:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd292fc3"} 
[2026-10-21 05:21:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82fd2d5215","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:54] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:21:54] testing.INFO: Old stock: 10  
[2026-10-21 05:21:54] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:21:54] testing.INFO: New stock: 5  
[2026-10-21 05:21:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd2d5215"} 
[2026-10-21 05:21:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82fd324219","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:55] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:21:55] testing.INFO: Old stock: 10  
[2026-10-21 05:21:55] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:21:55] testing.INFO: New stock: 6  
[2026-10-21 05:21:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd324219"} 
[2026-10-21 05:21:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad82fd37e336","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:55] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:21:55] testing.INFO: Old stock: 5  
[2026-10-21 05:21:55] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:21:55] testing.INFO: New stock: 1  
[2026-10-21 05:21:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd37e336"} 
[2026-10-21 05:21:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82fd3c98d1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:55] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 05:21:55] testing.INFO: Old stock: 10  
[2026-10-21 05:21:55] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:21:55] testing.INFO: New stock: 5  
[2026-10-21 05:21:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd3c98d1"} 
[2026-10-21 05:21:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82fd4340c7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:56] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 05:21:56] testing.INFO: Old stock: 12  
[2026-10-21 05:21:56] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:21:56] testing.INFO: New stock: 7  
[2026-10-21 05:21:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd4340c7"} 
[2026-10-21 05:21:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad82fd46c128","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:21:56] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 05:21:56] testing.INFO: Old stock: 12  
[2026-10-21 05:21:56] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:21:56] testing.INFO: New stock: 7  
[2026-10-21 05:21:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad82fd46c128"} 
[2026-10-21 05:26:30] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 05:26:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad830e6df40e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:26:30] testing.INFO: Old stock: 10  
[2026-10-21 05:26:30] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:26:30] testing.INFO: New stock: 7  
[2026-10-21 05:26:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e6df40e"} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad830e6f2ecc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:26:31] testing.INFO: Old stock: 10  
[2026-10-21 05:26:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:31] testing.INFO: New stock: 8  
[2026-10-21 05:26:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e6f2ecc"} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad830e7115ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad830e71e81d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad830e72b4fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e73874f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e746257","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e76b5f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:26:31] testing.INFO: Old stock: 10  
[2026-10-21 05:26:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:31] testing.INFO: New stock: 8  
[2026-10-21 05:26:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e76b5f8"} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e78797f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:26:31] testing.INFO: Old stock: 10  
[2026-10-21 05:26:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:31] testing.INFO: New stock: 8  
[2026-10-21 05:26:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e78797f"} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e7a3217","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:26:31] testing.INFO: Old stock: 10  
[2026-10-21 05:26:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:31] testing.INFO: New stock: 8  
[2026-10-21 05:26:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e7a3217"} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e7ba48f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:26:31] testing.INFO: Old stock: 3  
[2026-10-21 05:26:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:31] testing.INFO: New stock: 1  
[2026-10-21 05:26:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e7ba48f"} 
[2026-10-21 05:26:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830e7e7e2d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:31] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 05:26:31] testing.INFO: Old stock: 10  
[2026-10-21 05:26:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:31] testing.INFO: New stock: 8  
[2026-10-21 05:26:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e7e7e2d"} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:32] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:26:32] testing.INFO: Old stock: 10  
[2026-10-21 05:26:32] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:32] testing.INFO: New stock: 8  
[2026-10-21 05:26:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:32] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:26:32] testing.INFO: Old stock: 10  
[2026-10-21 05:26:32] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:26:32] testing.INFO: New stock: 9  
[2026-10-21 05:26:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:26:00+02:00"}} 
[2026-10-21 05:26:32] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:26:32] testing.INFO: Old stock: 10  
[2026-10-21 05:26:32] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:26:32] testing.INFO: New stock: 9  
[2026-10-21 05:26:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T05:26:32+02:00"}} 
[2026-10-21 05:26:32] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:26:32] testing.INFO: Old stock: 10  
[2026-10-21 05:26:32] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:26:32] testing.INFO: New stock: 9  
[2026-10-21 05:26:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:26:32+02:00"}} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:26:32+02:00"}} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:26:32+02:00"}} 
[2026-10-21 05:26:32] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:26:32] testing.INFO: Old stock: 5  
[2026-10-21 05:26:32] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:26:32] testing.INFO: New stock: 2  
[2026-10-21 05:26:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:26:32+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 05:26:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T02:26:32+02:00"}} 
[2026-10-21 05:26:32] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 05:26:32] testing.INFO: Old stock: 10  
[2026-10-21 05:26:32] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:26:32] testing.INFO: New stock: 9  
[2026-10-21 05:26:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:26:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad830e9ed6ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:34] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:26:34] testing.INFO: Old stock: 16  
[2026-10-21 05:26:34] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:26:34] testing.INFO: New stock: 10  
[2026-10-21 05:26:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830e9ed6ce"} 
[2026-10-21 05:26:34] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 05:26:34] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:26:34] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 05:26:34"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:26:34] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 05:26:35] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:26:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad830eb61755","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:35] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 05:26:35] testing.INFO: Old stock: 7  
[2026-10-21 05:26:35] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:35] testing.INFO: New stock: 5  
[2026-10-21 05:26:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830eb61755"} 
[2026-10-21 05:26:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad830ebab241","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:35] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:26:35] testing.INFO: Old stock: 13  
[2026-10-21 05:26:35] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:26:35] testing.INFO: New stock: 8  
[2026-10-21 05:26:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ebab241"} 
[2026-10-21 05:26:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad830ebb3138","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:35] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:26:35] testing.INFO: Old stock: 8  
[2026-10-21 05:26:35] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:26:35] testing.INFO: New stock: 4  
[2026-10-21 05:26:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ebb3138"} 
[2026-10-21 05:26:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad830ebd6778","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:35] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 05:26:35] testing.INFO: Old stock: 8  
[2026-10-21 05:26:35] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:26:35] testing.INFO: New stock: 2  
[2026-10-21 05:26:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ebd6778"} 
[2026-10-21 05:26:36] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:26:36] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:26:36] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 05:26:36"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:26:36] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad830ee0d070","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:26:38] testing.INFO: Old stock: 70  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:26:38] testing.INFO: New stock: 65  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ee0d070"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:26:38] testing.INFO: Old stock: 62  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:26:38] testing.INFO: New stock: 60  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad830ee2f4da","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:26:38] testing.INFO: Old stock: 59  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:26:38] testing.INFO: New stock: 55  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ee2f4da"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad830ee7a03f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:26:38] testing.INFO: Old stock: 10  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:26:38] testing.INFO: New stock: 6  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ee7a03f"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad830ee9229d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:26:38] testing.INFO: Old stock: 10  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:26:38] testing.INFO: New stock: 5  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ee9229d"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad830eeaadc8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:26:38] testing.INFO: Old stock: 10  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:26:38] testing.INFO: New stock: 6  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830eeaadc8"} 
[2026-10-21 05:26:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad830eeccec5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:38] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:26:38] testing.INFO: Old stock: 5  
[2026-10-21 05:26:38] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:26:38] testing.INFO: New stock: 1  
[2026-10-21 05:26:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830eeccec5"} 
[2026-10-21 05:26:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad830ef00d98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:39] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 05:26:39] testing.INFO: Old stock: 10  
[2026-10-21 05:26:39] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:26:39] testing.INFO: New stock: 5  
[2026-10-21 05:26:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ef00d98"} 
[2026-10-21 05:26:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad830ef2c99b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:39] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 05:26:39] testing.INFO: Old stock: 12  
[2026-10-21 05:26:39] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:26:39] testing.INFO: New stock: 7  
[2026-10-21 05:26:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ef2c99b"} 
[2026-10-21 05:26:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad830ef4947b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:26:39] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 05:26:39] testing.INFO: Old stock: 12  
[2026-10-21 05:26:39] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:26:39] testing.INFO: New stock: 7  
[2026-10-21 05:26:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad830ef4947b"} 
[2026-10-21 05:41:44] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-21 05:41:44"}  
[2026-10-21 05:41:44] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-21 05:41:44] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-21 05:41:44] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-21 05:41:44] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-21 05:41:44] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-21 05:41:57] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-21 05:41:57"}  
[2026-10-21 05:41:57] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-21 05:41:57] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-21 05:41:57] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-21 05:41:57] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-21 05:41:57] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-21 05:41:59] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-21 05:41:59"}  
[2026-10-21 05:41:59] testing.INFO: Start filter applied: 2026-10-19 22:00:00  
[2026-10-21 05:41:59] testing.INFO: End filter applied: 2026-10-20 21:59:59  
[2026-10-21 05:41:59] testing.INFO: Payments retrieved: 2 payments, total: 3000  
[2026-10-21 05:41:59] testing.INFO: Payment details: [{"id":1,"amount":"1000.00","method":"cash","created_at":"2026-10-19T20:30:00.000000Z","sale_id":1},{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2}]  
[2026-10-21 05:41:59] testing.INFO: Final totals: {"total_revenue":3000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":3000,"count":2}}}  
[2026-10-21 05:42:10] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad83494299ca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:42:12] testing.INFO: Old stock: 10  
[2026-10-21 05:42:12] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:42:12] testing.INFO: New stock: 7  
[2026-10-21 05:42:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad83494299ca"} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad8349456294","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:42:12] testing.INFO: Old stock: 10  
[2026-10-21 05:42:12] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:12] testing.INFO: New stock: 8  
[2026-10-21 05:42:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349456294"} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad83494786dc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad834948ec34","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad83494a4891","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad83494bf4c4","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad83494d231b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:42:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad834950e7a5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:42:13] testing.INFO: Old stock: 10  
[2026-10-21 05:42:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:13] testing.INFO: New stock: 8  
[2026-10-21 05:42:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad834950e7a5"} 
[2026-10-21 05:42:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad8349538c25","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:13] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:42:13] testing.INFO: Old stock: 10  
[2026-10-21 05:42:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:13] testing.INFO: New stock: 8  
[2026-10-21 05:42:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349538c25"} 
[2026-10-21 05:42:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad834955faad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:42:13] testing.INFO: Old stock: 10  
[2026-10-21 05:42:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:13] testing.INFO: New stock: 8  
[2026-10-21 05:42:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad834955faad"} 
[2026-10-21 05:42:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad834957f69c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:42:13] testing.INFO: Old stock: 3  
[2026-10-21 05:42:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:13] testing.INFO: New stock: 1  
[2026-10-21 05:42:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad834957f69c"} 
[2026-10-21 05:42:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad83495c3e5a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:13] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 05:42:13] testing.INFO: Old stock: 10  
[2026-10-21 05:42:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:13] testing.INFO: New stock: 8  
[2026-10-21 05:42:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad83495c3e5a"} 
[2026-10-21 05:42:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:42:13] testing.INFO: Old stock: 10  
[2026-10-21 05:42:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:13] testing.INFO: New stock: 8  
[2026-10-21 05:42:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:42:14] testing.INFO: Old stock: 10  
[2026-10-21 05:42:14] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:42:14] testing.INFO: New stock: 9  
[2026-10-21 05:42:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:42:00+02:00"}} 
[2026-10-21 05:42:14] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:42:14] testing.INFO: Old stock: 10  
[2026-10-21 05:42:14] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:42:14] testing.INFO: New stock: 9  
[2026-10-21 05:42:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T05:42:14+02:00"}} 
[2026-10-21 05:42:14] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:42:14] testing.INFO: Old stock: 10  
[2026-10-21 05:42:14] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:42:14] testing.INFO: New stock: 9  
[2026-10-21 05:42:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:42:14+02:00"}} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:42:14+02:00"}} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:42:14+02:00"}} 
[2026-10-21 05:42:14] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:42:14] testing.INFO: Old stock: 5  
[2026-10-21 05:42:14] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:42:14] testing.INFO: New stock: 2  
[2026-10-21 05:42:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:42:14+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 05:42:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T02:42:14+02:00"}} 
[2026-10-21 05:42:14] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 05:42:14] testing.INFO: Old stock: 10  
[2026-10-21 05:42:14] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:42:14] testing.INFO: New stock: 9  
[2026-10-21 05:42:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:42:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad834987ab09","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:16] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:42:16] testing.INFO: Old stock: 16  
[2026-10-21 05:42:16] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:42:16] testing.INFO: New stock: 10  
[2026-10-21 05:42:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad834987ab09"} 
[2026-10-21 05:42:17] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 05:42:17] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:42:17] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 05:42:17"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:42:17] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 05:42:18] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad8349aaab90","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:18] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 05:42:18] testing.INFO: Old stock: 7  
[2026-10-21 05:42:18] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:18] testing.INFO: New stock: 5  
[2026-10-21 05:42:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349aaab90"} 
[2026-10-21 05:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8349b1be71","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:19] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:42:19] testing.INFO: Old stock: 13  
[2026-10-21 05:42:19] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:42:19] testing.INFO: New stock: 8  
[2026-10-21 05:42:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349b1be71"} 
[2026-10-21 05:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8349b27908","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:19] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:42:19] testing.INFO: Old stock: 8  
[2026-10-21 05:42:19] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:42:19] testing.INFO: New stock: 4  
[2026-10-21 05:42:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349b27908"} 
[2026-10-21 05:42:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad8349b5719f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:19] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 05:42:19] testing.INFO: Old stock: 8  
[2026-10-21 05:42:19] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:42:19] testing.INFO: New stock: 2  
[2026-10-21 05:42:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349b5719f"} 
[2026-10-21 05:42:19] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:42:19] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:42:19] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 05:42:19"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:42:19] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 05:42:22] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-21 05:42:22"}  
[2026-10-21 05:42:22] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-21 05:42:22] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-21 05:42:22] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-21 05:42:22] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-21 05:42:22] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-21 05:42:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8349e7a7fb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:42:22] testing.INFO: Old stock: 70  
[2026-10-21 05:42:22] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:42:22] testing.INFO: New stock: 65  
[2026-10-21 05:42:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349e7a7fb"} 
[2026-10-21 05:42:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:42:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:42:22] testing.INFO: Old stock: 62  
[2026-10-21 05:42:22] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:42:22] testing.INFO: New stock: 60  
[2026-10-21 05:42:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:42:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8349ec4e10","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:42:22] testing.INFO: Old stock: 59  
[2026-10-21 05:42:22] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:42:22] testing.INFO: New stock: 55  
[2026-10-21 05:42:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349ec4e10"} 
[2026-10-21 05:42:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8349f49403","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:42:23] testing.INFO: Old stock: 10  
[2026-10-21 05:42:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:42:23] testing.INFO: New stock: 6  
[2026-10-21 05:42:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349f49403"} 
[2026-10-21 05:42:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8349f7534f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:23] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:42:23] testing.INFO: Old stock: 10  
[2026-10-21 05:42:23] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:42:23] testing.INFO: New stock: 5  
[2026-10-21 05:42:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349f7534f"} 
[2026-10-21 05:42:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8349f9c910","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:23] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:42:23] testing.INFO: Old stock: 10  
[2026-10-21 05:42:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:42:23] testing.INFO: New stock: 6  
[2026-10-21 05:42:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349f9c910"} 
[2026-10-21 05:42:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8349fcd1e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:23] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:42:23] testing.INFO: Old stock: 5  
[2026-10-21 05:42:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:42:23] testing.INFO: New stock: 1  
[2026-10-21 05:42:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349fcd1e4"} 
[2026-10-21 05:42:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8349fefe06","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:24] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 05:42:24] testing.INFO: Old stock: 10  
[2026-10-21 05:42:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:42:24] testing.INFO: New stock: 5  
[2026-10-21 05:42:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8349fefe06"} 
[2026-10-21 05:42:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad834a02c287","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:24] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 05:42:24] testing.INFO: Old stock: 12  
[2026-10-21 05:42:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:42:24] testing.INFO: New stock: 7  
[2026-10-21 05:42:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad834a02c287"} 
[2026-10-21 05:42:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad834a0495af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:42:24] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 05:42:24] testing.INFO: Old stock: 12  
[2026-10-21 05:42:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:42:24] testing.INFO: New stock: 7  
[2026-10-21 05:42:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad834a0495af"} 
[2026-10-21 05:57:52] local.ERROR: SQLSTATE[HY000]: General error: 1824 Failed to open the referenced table 'products' (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: alter table `stock_batches` add constraint `stock_batches_product_id_foreign` foreign key (`product_id`) references `products` (`id`) on delete cascade) {"exception":"[object] (Illuminate\\Database\\QueryException(code: HY000): SQLSTATE[HY000]: General error: 1824 Failed to open the referenced table 'products' (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: alter table `stock_batches` add constraint `stock_batches_product_id_foreign` foreign key (`product_id`) references `products` (`id`) on delete cascade) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `st...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `st...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `st...')
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('stock_batches', Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_20_000001_create_stock_batches_table.php(17): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_20_0000...', Object(Closure))
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_20_0000...', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: HY000): SQLSTATE[HY000]: General error: 1824 Failed to open the referenced table 'products' at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('alter table `st...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `st...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `st...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `st...')
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('stock_batches', Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_20_000001_create_stock_batches_table.php(17): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_20_0000...', Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_20_0000...', Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-10-21 05:58:00] local.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'stock_batches' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: create table `stock_batches` (`id` bigint unsigned not null auto_increment primary key, `product_id` bigint unsigned not null, `batch_no` varchar(100) not null, `expiry_date` date null, `quantity_received` decimal(15, 2) not null default '0', `quantity_remaining` decimal(15, 2) not null default '0', `unit_cost` decimal(15, 2) null, `source` varchar(30) not null default 'adjustment', `purchase_item_id` bigint unsigned null, `user_id` bigint unsigned null, `received_at` timestamp null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci' engine = InnoDB) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'stock_batches' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: create table `stock_batches` (`id` bigint unsigned not null auto_increment primary key, `product_id` bigint unsigned not null, `batch_no` varchar(100) not null, `expiry_date` date null, `quantity_received` decimal(15, 2) not null default '0', `quantity_remaining` decimal(15, 2) not null default '0', `unit_cost` decimal(15, 2) null, `source` varchar(30) not null default 'adjustment', `purchase_item_id` bigint unsigned null, `user_id` bigint unsigned null, `received_at` timestamp null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci' engine = InnoDB) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('stock_batches', Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_20_000001_create_stock_batches_table.php(17): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_20_0000...', Object(Closure))
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_20_0000...', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'stock_batches' already exists at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('create table `s...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `s...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `s...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `s...')
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('stock_batches', Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_20_000001_create_stock_batches_table.php(17): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_20_0000...', Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_20_0000...', Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-10-21 05:59:10] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 05:59:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad8388f9f19f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:59:11] testing.INFO: Old stock: 10  
[2026-10-21 05:59:11] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:59:11] testing.INFO: New stock: 7  
[2026-10-21 05:59:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8388f9f19f"} 
[2026-10-21 05:59:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad8388fc6f2f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:11] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:59:11] testing.INFO: Old stock: 10  
[2026-10-21 05:59:11] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:11] testing.INFO: New stock: 8  
[2026-10-21 05:59:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8388fc6f2f"} 
[2026-10-21 05:59:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad8388febaaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad838900dd38","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad83890255e7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad838903a94c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad838904c45e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad838907d9f5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:59:12] testing.INFO: Old stock: 10  
[2026-10-21 05:59:12] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:12] testing.INFO: New stock: 8  
[2026-10-21 05:59:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad838907d9f5"} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad83890b1687","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:59:12] testing.INFO: Old stock: 10  
[2026-10-21 05:59:12] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:12] testing.INFO: New stock: 8  
[2026-10-21 05:59:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad83890b1687"} 
[2026-10-21 05:59:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad83890dffc2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:12] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:59:12] testing.INFO: Old stock: 10  
[2026-10-21 05:59:12] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:12] testing.INFO: New stock: 8  
[2026-10-21 05:59:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad83890dffc2"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad838910cdaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:59:13] testing.INFO: Old stock: 3  
[2026-10-21 05:59:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:13] testing.INFO: New stock: 1  
[2026-10-21 05:59:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad838910cdaa"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad838914e5af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:13] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 05:59:13] testing.INFO: Old stock: 10  
[2026-10-21 05:59:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:13] testing.INFO: New stock: 8  
[2026-10-21 05:59:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad838914e5af"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 05:59:13] testing.INFO: Old stock: 10  
[2026-10-21 05:59:13] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:13] testing.INFO: New stock: 8  
[2026-10-21 05:59:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:13] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 05:59:13] testing.INFO: Old stock: 10  
[2026-10-21 05:59:13] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:59:13] testing.INFO: New stock: 9  
[2026-10-21 05:59:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:59:00+02:00"}} 
[2026-10-21 05:59:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:59:13] testing.INFO: Old stock: 10  
[2026-10-21 05:59:13] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:59:13] testing.INFO: New stock: 9  
[2026-10-21 05:59:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T05:59:13+02:00"}} 
[2026-10-21 05:59:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:59:13] testing.INFO: Old stock: 10  
[2026-10-21 05:59:13] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:59:13] testing.INFO: New stock: 9  
[2026-10-21 05:59:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:59:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:59:13+02:00"}} 
[2026-10-21 05:59:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:59:14+02:00"}} 
[2026-10-21 05:59:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:59:14+02:00"}} 
[2026-10-21 05:59:14] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:59:14] testing.INFO: Old stock: 5  
[2026-10-21 05:59:14] testing.INFO: Quantity deducted: 3  
[2026-10-21 05:59:14] testing.INFO: New stock: 2  
[2026-10-21 05:59:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:59:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T05:59:14+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 05:59:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T02:59:14+02:00"}} 
[2026-10-21 05:59:14] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 05:59:14] testing.INFO: Old stock: 10  
[2026-10-21 05:59:14] testing.INFO: Quantity deducted: 1  
[2026-10-21 05:59:14] testing.INFO: New stock: 9  
[2026-10-21 05:59:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 05:59:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad83894057cf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:16] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:59:16] testing.INFO: Old stock: 16  
[2026-10-21 05:59:16] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:59:16] testing.INFO: New stock: 10  
[2026-10-21 05:59:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad83894057cf"} 
[2026-10-21 05:59:17] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 05:59:17] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:59:17] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 05:59:17"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:59:17] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 05:59:17] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:59:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad838961946a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:18] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 05:59:18] testing.INFO: Old stock: 7  
[2026-10-21 05:59:18] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:18] testing.INFO: New stock: 5  
[2026-10-21 05:59:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad838961946a"} 
[2026-10-21 05:59:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8389683f01","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:18] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:59:18] testing.INFO: Old stock: 13  
[2026-10-21 05:59:18] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:59:18] testing.INFO: New stock: 8  
[2026-10-21 05:59:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389683f01"} 
[2026-10-21 05:59:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad838968e442","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:18] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 05:59:18] testing.INFO: Old stock: 8  
[2026-10-21 05:59:18] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:59:18] testing.INFO: New stock: 4  
[2026-10-21 05:59:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad838968e442"} 
[2026-10-21 05:59:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad83896ccb03","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:18] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 05:59:18] testing.INFO: Old stock: 8  
[2026-10-21 05:59:18] testing.INFO: Quantity deducted: 6  
[2026-10-21 05:59:18] testing.INFO: New stock: 2  
[2026-10-21 05:59:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad83896ccb03"} 
[2026-10-21 05:59:19] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 05:59:19] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 05:59:19] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 05:59:19"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 05:59:19] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 05:59:22] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-21 05:59:22"}  
[2026-10-21 05:59:22] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-21 05:59:22] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-21 05:59:22] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-21 05:59:22] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-21 05:59:22] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-21 05:59:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8389a654b0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:59:22] testing.INFO: Old stock: 70  
[2026-10-21 05:59:22] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:59:22] testing.INFO: New stock: 65  
[2026-10-21 05:59:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389a654b0"} 
[2026-10-21 05:59:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 05:59:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:59:22] testing.INFO: Old stock: 62  
[2026-10-21 05:59:22] testing.INFO: Quantity deducted: 2  
[2026-10-21 05:59:22] testing.INFO: New stock: 60  
[2026-10-21 05:59:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 05:59:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8389a9c916","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 05:59:22] testing.INFO: Old stock: 59  
[2026-10-21 05:59:22] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:59:22] testing.INFO: New stock: 55  
[2026-10-21 05:59:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389a9c916"} 
[2026-10-21 05:59:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8389b1398f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 05:59:23] testing.INFO: Old stock: 10  
[2026-10-21 05:59:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:59:23] testing.INFO: New stock: 6  
[2026-10-21 05:59:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389b1398f"} 
[2026-10-21 05:59:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8389b37726","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:23] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 05:59:23] testing.INFO: Old stock: 10  
[2026-10-21 05:59:23] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:59:23] testing.INFO: New stock: 5  
[2026-10-21 05:59:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389b37726"} 
[2026-10-21 05:59:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8389b5eacf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:23] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 05:59:23] testing.INFO: Old stock: 10  
[2026-10-21 05:59:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:59:23] testing.INFO: New stock: 6  
[2026-10-21 05:59:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389b5eacf"} 
[2026-10-21 05:59:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8389b93fbb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:23] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 05:59:23] testing.INFO: Old stock: 5  
[2026-10-21 05:59:23] testing.INFO: Quantity deducted: 4  
[2026-10-21 05:59:23] testing.INFO: New stock: 1  
[2026-10-21 05:59:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389b93fbb"} 
[2026-10-21 05:59:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8389bba0e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:23] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 05:59:23] testing.INFO: Old stock: 10  
[2026-10-21 05:59:23] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:59:23] testing.INFO: New stock: 5  
[2026-10-21 05:59:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389bba0e4"} 
[2026-10-21 05:59:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8389bef398","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:24] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 05:59:24] testing.INFO: Old stock: 12  
[2026-10-21 05:59:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:59:24] testing.INFO: New stock: 7  
[2026-10-21 05:59:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389bef398"} 
[2026-10-21 05:59:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8389c16715","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 05:59:24] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 05:59:24] testing.INFO: Old stock: 12  
[2026-10-21 05:59:24] testing.INFO: Quantity deducted: 5  
[2026-10-21 05:59:24] testing.INFO: New stock: 7  
[2026-10-21 05:59:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8389c16715"} 
[2026-10-21 06:32:46] local.ERROR: SQLSTATE[HY000]: General error: 1824 Failed to open the referenced table 'users' (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: alter table `notification_recipients` add constraint `notification_recipients_added_by_foreign` foreign key (`added_by`) references `users` (`id`) on delete set null) {"exception":"[object] (Illuminate\\Database\\QueryException(code: HY000): SQLSTATE[HY000]: General error: 1824 Failed to open the referenced table 'users' (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: alter table `notification_recipients` add constraint `notification_recipients_added_by_foreign` foreign key (`added_by`) references `users` (`id`) on delete set null) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `no...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `no...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `no...')
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('notification_re...', Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_07_000002_create_notification_tables.php(12): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_07_0000...', Object(Closure))
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_07_0000...', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: HY000): SQLSTATE[HY000]: General error: 1824 Failed to open the referenced table 'users' at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('alter table `no...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('alter table `no...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('alter table `no...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('alter table `no...')
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('notification_re...', Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_07_000002_create_notification_tables.php(12): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_07_0000...', Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_07_0000...', Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-10-21 06:32:47] local.ERROR: SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'notification_recipients' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: create table `notification_recipients` (`id` bigint unsigned not null auto_increment primary key, `email` varchar(191) not null, `name` varchar(191) null, `is_active` tinyint(1) not null default '1', `is_default` tinyint(1) not null default '0', `added_by` bigint unsigned null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci' engine = InnoDB) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'notification_recipients' already exists (Connection: mysql, Host: localhost, Port: 3306, Database: area25_sim, SQL: create table `notification_recipients` (`id` bigint unsigned not null auto_increment primary key, `email` varchar(191) not null, `name` varchar(191) null, `is_active` tinyint(1) not null default '1', `is_default` tinyint(1) not null default '0', `added_by` bigint unsigned null, `created_at` timestamp null, `updated_at` timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci' engine = InnoDB) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `n...', Array, Object(Closure))
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `n...', Array, Object(Closure))
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `n...')
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('notification_re...', Object(Closure))
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_07_000002_create_notification_tables.php(12): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_07_0000...', Object(Closure))
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_07_0000...', Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#34 {main}

[previous exception] [object] (PDOException(code: 42S01): SQLSTATE[42S01]: Base table or view already exists: 1050 Table 'notification_recipients' already exists at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php:584)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(584): PDOStatement->execute()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate/Database/Connection->Illuminate/Database/{closure}('create table `n...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(794): Illuminate/Database/Connection->runQueryCallback('create table `n...', Array, Object(Closure))
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Connection.php(573): Illuminate/Database/Connection->run('create table `n...', Array, Object(Closure))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Blueprint.php(121): Illuminate/Database/Connection->statement('create table `n...')
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(686): Illuminate/Database/Schema/Blueprint->build()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php(506): Illuminate/Database/Schema/Builder->build(Object(Illuminate/Database/Schema/Blueprint))
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate/Database/Schema/Builder->create('notification_re...', Object(Closure))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/database/migrations/2026_10_07_000002_create_notification_tables.php(12): Illuminate/Support/Facades/Facade::__callStatic('create', Array)
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(517): Illuminate/Database/Migrations/Migration@anonymous->up()
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(442): Illuminate/Database/Migrations/Migrator->runMethod(Object(Illuminate/Database/MySqlConnection), Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(451): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->runMigration(Object(Illuminate/Database/Migrations/Migration@anonymous), 'up')
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate/Database/Migrations/Migrator->Illuminate/Database/Migrations/{closure}()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(814): Illuminate/Console/View/Components/Task->render('2026_10_07_0000...', Object(Closure))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(253): Illuminate/Database/Migrations/Migrator->write('Illuminate//Cons...', '2026_10_07_0000...', Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(211): Illuminate/Database/Migrations/Migrator->runUp('C://Users//Solomo...', 2, false)
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(138): Illuminate/Database/Migrations/Migrator->runPending(Array, Array)
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(116): Illuminate/Database/Migrations/Migrator->run(Array, Array)
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Migrations/Migrator.php(671): Illuminate/Database/Console/Migrations/MigrateCommand->Illuminate/Database/Console/Migrations/{closure}()
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(109): Illuminate/Database/Migrations/Migrator->usingConnection(NULL, Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Database/Console/Migrations/MigrateCommand.php(88): Illuminate/Database/Console/Migrations/MigrateCommand->runMigrations()
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate/Database/Console/Migrations/MigrateCommand->handle()
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate/Container/BoundMethod::Illuminate/Container/{closure}()
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate/Container/Util::unwrapIfClosure(Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate/Container/BoundMethod::callBoundMethod(Object(Illuminate/Foundation/Application), Array, Object(Closure))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate/Container/BoundMethod::call(Object(Illuminate/Foundation/Application), Array, Array, NULL)
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate/Container/Container->call(Array)
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Command/Command.php(341): Illuminate/Console/Command->execute(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony/Component/Console/Command/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Illuminate/Console/OutputStyle))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(1102): Illuminate/Console/Command->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(356): Symfony/Component/Console/Application->doRunCommand(Object(Illuminate/Database/Console/Migrations/MigrateCommand), Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/symfony/console/Application.php(195): Symfony/Component/Console/Application->doRun(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(198): Symfony/Component/Console/Application->run(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1235): Illuminate/Foundation/Console/Kernel->handle(Object(Symfony/Component/Console/Input/ArgvInput), Object(Symfony/Component/Console/Output/ConsoleOutput))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/artisan(16): Illuminate/Foundation/Application->handleCommand(Object(Symfony/Component/Console/Input/ArgvInput))
#36 {main}
"} 
[2026-10-21 06:33:23] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-21 06:33:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad84094a3b72","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:24] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 06:33:24] testing.INFO: Old stock: 10  
[2026-10-21 06:33:24] testing.INFO: Quantity deducted: 3  
[2026-10-21 06:33:24] testing.INFO: New stock: 7  
[2026-10-21 06:33:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad84094a3b72"} 
[2026-10-21 06:33:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ad84094bfab2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 06:33:24] testing.INFO: Old stock: 10  
[2026-10-21 06:33:24] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:24] testing.INFO: New stock: 8  
[2026-10-21 06:33:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad84094bfab2"} 
[2026-10-21 06:33:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad84094d9ff7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ad8409509f95","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ad84095273a9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad84095456d5","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad8409560513","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad840959a48a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:25] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 06:33:25] testing.INFO: Old stock: 10  
[2026-10-21 06:33:25] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:25] testing.INFO: New stock: 8  
[2026-10-21 06:33:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840959a48a"} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad84095c666d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:25] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 06:33:25] testing.INFO: Old stock: 10  
[2026-10-21 06:33:25] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:25] testing.INFO: New stock: 8  
[2026-10-21 06:33:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad84095c666d"} 
[2026-10-21 06:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad84095edfe9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 06:33:26] testing.INFO: Old stock: 10  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:26] testing.INFO: New stock: 8  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad84095edfe9"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad840961adc0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 06:33:26] testing.INFO: Old stock: 3  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:26] testing.INFO: New stock: 1  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840961adc0"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad840965c9d7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-21 06:33:26] testing.INFO: Old stock: 10  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:26] testing.INFO: New stock: 8  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840965c9d7"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-21 06:33:26] testing.INFO: Old stock: 10  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:26] testing.INFO: New stock: 8  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-21 06:33:26] testing.INFO: Old stock: 10  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 1  
[2026-10-21 06:33:26] testing.INFO: New stock: 9  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T04:33:00+02:00"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 06:33:26] testing.INFO: Old stock: 10  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 1  
[2026-10-21 06:33:26] testing.INFO: New stock: 9  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T06:33:26+02:00"}} 
[2026-10-21 06:33:26] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 06:33:26] testing.INFO: Old stock: 10  
[2026-10-21 06:33:26] testing.INFO: Quantity deducted: 1  
[2026-10-21 06:33:26] testing.INFO: New stock: 9  
[2026-10-21 06:33:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 06:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T06:33:26+02:00"}} 
[2026-10-21 06:33:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T06:33:27+02:00"}} 
[2026-10-21 06:33:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T06:33:27+02:00"}} 
[2026-10-21 06:33:27] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 06:33:27] testing.INFO: Old stock: 5  
[2026-10-21 06:33:27] testing.INFO: Quantity deducted: 3  
[2026-10-21 06:33:27] testing.INFO: New stock: 2  
[2026-10-21 06:33:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 06:33:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T06:33:27+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-21 06:33:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-21T03:33:27+02:00"}} 
[2026-10-21 06:33:27] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-21 06:33:27] testing.INFO: Old stock: 10  
[2026-10-21 06:33:27] testing.INFO: Quantity deducted: 1  
[2026-10-21 06:33:27] testing.INFO: New stock: 9  
[2026-10-21 06:33:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-21 06:33:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad840992a9f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:29] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 06:33:29] testing.INFO: Old stock: 16  
[2026-10-21 06:33:29] testing.INFO: Quantity deducted: 6  
[2026-10-21 06:33:29] testing.INFO: New stock: 10  
[2026-10-21 06:33:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840992a9f3"} 
[2026-10-21 06:33:30] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-21 06:33:30] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 06:33:30] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-21 06:33:30"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 06:33:30] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-21 06:33:31] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-20"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 06:33:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ad8409b59bca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:31] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-21 06:33:31] testing.INFO: Old stock: 7  
[2026-10-21 06:33:31] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:31] testing.INFO: New stock: 5  
[2026-10-21 06:33:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8409b59bca"} 
[2026-10-21 06:33:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8409bc30fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:31] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 06:33:31] testing.INFO: Old stock: 13  
[2026-10-21 06:33:31] testing.INFO: Quantity deducted: 5  
[2026-10-21 06:33:31] testing.INFO: New stock: 8  
[2026-10-21 06:33:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8409bc30fd"} 
[2026-10-21 06:33:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8409bcf3b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:31] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-21 06:33:31] testing.INFO: Old stock: 8  
[2026-10-21 06:33:31] testing.INFO: Quantity deducted: 4  
[2026-10-21 06:33:31] testing.INFO: New stock: 4  
[2026-10-21 06:33:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8409bcf3b6"} 
[2026-10-21 06:33:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ad8409c191f4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:32] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-21 06:33:32] testing.INFO: Old stock: 8  
[2026-10-21 06:33:32] testing.INFO: Quantity deducted: 6  
[2026-10-21 06:33:32] testing.INFO: New stock: 2  
[2026-10-21 06:33:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8409c191f4"} 
[2026-10-21 06:33:32] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-21 06:33:32] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-21 06:33:32] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-21 06:33:32"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-21 06:33:32] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-21 06:33:35] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-21 06:33:35"}  
[2026-10-21 06:33:35] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-21 06:33:35] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-21 06:33:35] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-21 06:33:35] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-21 06:33:35] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-21 06:33:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad8409f7d56a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:35] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 06:33:35] testing.INFO: Old stock: 70  
[2026-10-21 06:33:35] testing.INFO: Quantity deducted: 5  
[2026-10-21 06:33:35] testing.INFO: New stock: 65  
[2026-10-21 06:33:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8409f7d56a"} 
[2026-10-21 06:33:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-21 06:33:35] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 06:33:35] testing.INFO: Old stock: 62  
[2026-10-21 06:33:35] testing.INFO: Quantity deducted: 2  
[2026-10-21 06:33:35] testing.INFO: New stock: 60  
[2026-10-21 06:33:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-21 06:33:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad8409fd9cd6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:35] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-21 06:33:35] testing.INFO: Old stock: 59  
[2026-10-21 06:33:35] testing.INFO: Quantity deducted: 4  
[2026-10-21 06:33:35] testing.INFO: New stock: 55  
[2026-10-21 06:33:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad8409fd9cd6"} 
[2026-10-21 06:33:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad840a05e563","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:36] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-21 06:33:36] testing.INFO: Old stock: 10  
[2026-10-21 06:33:36] testing.INFO: Quantity deducted: 4  
[2026-10-21 06:33:36] testing.INFO: New stock: 6  
[2026-10-21 06:33:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a05e563"} 
[2026-10-21 06:33:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad840a081f02","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:36] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-21 06:33:36] testing.INFO: Old stock: 10  
[2026-10-21 06:33:36] testing.INFO: Quantity deducted: 5  
[2026-10-21 06:33:36] testing.INFO: New stock: 5  
[2026-10-21 06:33:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a081f02"} 
[2026-10-21 06:33:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad840a0a8d73","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:36] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-21 06:33:36] testing.INFO: Old stock: 10  
[2026-10-21 06:33:36] testing.INFO: Quantity deducted: 4  
[2026-10-21 06:33:36] testing.INFO: New stock: 6  
[2026-10-21 06:33:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a0a8d73"} 
[2026-10-21 06:33:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ad840a0dc03f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:36] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-21 06:33:36] testing.INFO: Old stock: 5  
[2026-10-21 06:33:36] testing.INFO: Quantity deducted: 4  
[2026-10-21 06:33:36] testing.INFO: New stock: 1  
[2026-10-21 06:33:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a0dc03f"} 
[2026-10-21 06:33:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad840a10cba7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:37] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-21 06:33:37] testing.INFO: Old stock: 10  
[2026-10-21 06:33:37] testing.INFO: Quantity deducted: 5  
[2026-10-21 06:33:37] testing.INFO: New stock: 5  
[2026-10-21 06:33:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a10cba7"} 
[2026-10-21 06:33:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad840a139e27","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:37] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-21 06:33:37] testing.INFO: Old stock: 12  
[2026-10-21 06:33:37] testing.INFO: Quantity deducted: 5  
[2026-10-21 06:33:37] testing.INFO: New stock: 7  
[2026-10-21 06:33:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a139e27"} 
[2026-10-21 06:33:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ad840a1545bf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-21 06:33:37] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-21 06:33:37] testing.INFO: Old stock: 12  
[2026-10-21 06:33:37] testing.INFO: Quantity deducted: 5  
[2026-10-21 06:33:37] testing.INFO: New stock: 7  
[2026-10-21 06:33:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ad840a1545bf"} 
[2026-10-22 22:08:45] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:08:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6d4e792ee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:46] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:08:46] testing.INFO: Old stock: 10  
[2026-10-22 22:08:46] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:08:46] testing.INFO: New stock: 7  
[2026-10-22 22:08:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d4e792ee"} 
[2026-10-22 22:08:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada6d4e96189","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:46] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:08:46] testing.INFO: Old stock: 10  
[2026-10-22 22:08:46] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:46] testing.INFO: New stock: 8  
[2026-10-22 22:08:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d4e96189"} 
[2026-10-22 22:08:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6d4eb3a09","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:46] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6d4ec94bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada6d4edfa17","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d4ef21bf","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:08:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d4f10f60","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:08:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d4f486d0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:08:47] testing.INFO: Old stock: 10  
[2026-10-22 22:08:47] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:47] testing.INFO: New stock: 8  
[2026-10-22 22:08:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d4f486d0"} 
[2026-10-22 22:08:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d4f7d9ee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:08:47] testing.INFO: Old stock: 10  
[2026-10-22 22:08:47] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:47] testing.INFO: New stock: 8  
[2026-10-22 22:08:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d4f7d9ee"} 
[2026-10-22 22:08:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d4fa27b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:08:47] testing.INFO: Old stock: 10  
[2026-10-22 22:08:47] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:47] testing.INFO: New stock: 8  
[2026-10-22 22:08:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d4fa27b6"} 
[2026-10-22 22:08:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d4fc3bcd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:47] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:08:47] testing.INFO: Old stock: 3  
[2026-10-22 22:08:47] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:47] testing.INFO: New stock: 1  
[2026-10-22 22:08:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d4fc3bcd"} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d502c699","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:48] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:08:48] testing.INFO: Old stock: 10  
[2026-10-22 22:08:48] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:48] testing.INFO: New stock: 8  
[2026-10-22 22:08:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d502c699"} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:08:48] testing.INFO: Old stock: 10  
[2026-10-22 22:08:48] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:48] testing.INFO: New stock: 8  
[2026-10-22 22:08:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:48] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:08:48] testing.INFO: Old stock: 10  
[2026-10-22 22:08:48] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:08:48] testing.INFO: New stock: 9  
[2026-10-22 22:08:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:08:00+02:00"}} 
[2026-10-22 22:08:48] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:08:48] testing.INFO: Old stock: 10  
[2026-10-22 22:08:48] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:08:48] testing.INFO: New stock: 9  
[2026-10-22 22:08:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:08:48+02:00"}} 
[2026-10-22 22:08:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:08:48] testing.INFO: Old stock: 10  
[2026-10-22 22:08:48] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:08:48] testing.INFO: New stock: 9  
[2026-10-22 22:08:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:08:48+02:00"}} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:08:48+02:00"}} 
[2026-10-22 22:08:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:08:48+02:00"}} 
[2026-10-22 22:08:48] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:08:48] testing.INFO: Old stock: 5  
[2026-10-22 22:08:48] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:08:48] testing.INFO: New stock: 2  
[2026-10-22 22:08:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:08:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:08:49+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:08:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:08:49+02:00"}} 
[2026-10-22 22:08:49] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:08:49] testing.INFO: Old stock: 10  
[2026-10-22 22:08:49] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:08:49] testing.INFO: New stock: 9  
[2026-10-22 22:08:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:08:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada6d5315d56","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:51] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:08:51] testing.INFO: Old stock: 16  
[2026-10-22 22:08:51] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:08:51] testing.INFO: New stock: 10  
[2026-10-22 22:08:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5315d56"} 
[2026-10-22 22:08:51] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:08:51] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:08:51] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:08:51"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:08:52] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:08:52] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:08:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6d5508854","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:53] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-22 22:08:53] testing.INFO: Old stock: 7  
[2026-10-22 22:08:53] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:53] testing.INFO: New stock: 5  
[2026-10-22 22:08:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5508854"} 
[2026-10-22 22:08:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6d557f3eb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:53] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:08:53] testing.INFO: Old stock: 13  
[2026-10-22 22:08:53] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:08:53] testing.INFO: New stock: 8  
[2026-10-22 22:08:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d557f3eb"} 
[2026-10-22 22:08:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6d55897d8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:53] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:08:53] testing.INFO: Old stock: 8  
[2026-10-22 22:08:53] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:08:53] testing.INFO: New stock: 4  
[2026-10-22 22:08:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d55897d8"} 
[2026-10-22 22:08:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada6d55c06e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:53] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-22 22:08:53] testing.INFO: Old stock: 8  
[2026-10-22 22:08:53] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:08:53] testing.INFO: New stock: 2  
[2026-10-22 22:08:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d55c06e5"} 
[2026-10-22 22:08:54] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:08:54] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:08:54] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:08:54"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:08:54] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:08:56] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:08:56"}  
[2026-10-22 22:08:56] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:08:56] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:08:56] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:08:56] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:08:56] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:08:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6d5924833","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:08:57] testing.INFO: Old stock: 70  
[2026-10-22 22:08:57] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:08:57] testing.INFO: New stock: 65  
[2026-10-22 22:08:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5924833"} 
[2026-10-22 22:08:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:08:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:08:57] testing.INFO: Old stock: 62  
[2026-10-22 22:08:57] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:08:57] testing.INFO: New stock: 60  
[2026-10-22 22:08:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:08:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6d5955c4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:08:57] testing.INFO: Old stock: 59  
[2026-10-22 22:08:57] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:08:57] testing.INFO: New stock: 55  
[2026-10-22 22:08:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5955c4a"} 
[2026-10-22 22:08:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6d59c8467","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:57] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:08:57] testing.INFO: Old stock: 10  
[2026-10-22 22:08:57] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:08:57] testing.INFO: New stock: 6  
[2026-10-22 22:08:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d59c8467"} 
[2026-10-22 22:08:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6d59e6de5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:57] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:08:57] testing.INFO: Old stock: 10  
[2026-10-22 22:08:57] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:08:57] testing.INFO: New stock: 5  
[2026-10-22 22:08:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d59e6de5"} 
[2026-10-22 22:08:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6d5a1916b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:58] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:08:58] testing.INFO: Old stock: 10  
[2026-10-22 22:08:58] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:08:58] testing.INFO: New stock: 6  
[2026-10-22 22:08:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5a1916b"} 
[2026-10-22 22:08:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6d5a5507d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:58] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:08:58] testing.INFO: Old stock: 5  
[2026-10-22 22:08:58] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:08:58] testing.INFO: New stock: 1  
[2026-10-22 22:08:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5a5507d"} 
[2026-10-22 22:08:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6d5a758e8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:58] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:08:58] testing.INFO: Old stock: 10  
[2026-10-22 22:08:58] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:08:58] testing.INFO: New stock: 5  
[2026-10-22 22:08:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5a758e8"} 
[2026-10-22 22:08:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6d5aa31ab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:58] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:08:58] testing.INFO: Old stock: 12  
[2026-10-22 22:08:58] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:08:58] testing.INFO: New stock: 7  
[2026-10-22 22:08:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5aa31ab"} 
[2026-10-22 22:08:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6d5ac23c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:08:58] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:08:58] testing.INFO: Old stock: 12  
[2026-10-22 22:08:58] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:08:58] testing.INFO: New stock: 7  
[2026-10-22 22:08:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6d5ac23c2"} 
[2026-10-22 22:16:24] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:16:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f1a19bbb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:26] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:16:26] testing.INFO: Old stock: 10  
[2026-10-22 22:16:26] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:16:26] testing.INFO: New stock: 7  
[2026-10-22 22:16:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1a19bbb"} 
[2026-10-22 22:16:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada6f1a4c13e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:26] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:16:26] testing.INFO: Old stock: 10  
[2026-10-22 22:16:26] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:26] testing.INFO: New stock: 8  
[2026-10-22 22:16:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1a4c13e"} 
[2026-10-22 22:16:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f1a8232b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:26] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f1aa8777","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada6f1ac657d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1ae0ed6","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:16:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1b200ab","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:16:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1b777f2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:27] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:16:27] testing.INFO: Old stock: 10  
[2026-10-22 22:16:27] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:27] testing.INFO: New stock: 8  
[2026-10-22 22:16:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1b777f2"} 
[2026-10-22 22:16:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1bc952b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:27] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:16:27] testing.INFO: Old stock: 10  
[2026-10-22 22:16:27] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:27] testing.INFO: New stock: 8  
[2026-10-22 22:16:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1bc952b"} 
[2026-10-22 22:16:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1c1de5a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:28] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:16:28] testing.INFO: Old stock: 10  
[2026-10-22 22:16:28] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:28] testing.INFO: New stock: 8  
[2026-10-22 22:16:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1c1de5a"} 
[2026-10-22 22:16:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1c4df43","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:28] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:16:28] testing.INFO: Old stock: 3  
[2026-10-22 22:16:28] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:28] testing.INFO: New stock: 1  
[2026-10-22 22:16:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1c4df43"} 
[2026-10-22 22:16:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f1cab1de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:28] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:16:28] testing.INFO: Old stock: 10  
[2026-10-22 22:16:28] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:28] testing.INFO: New stock: 8  
[2026-10-22 22:16:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f1cab1de"} 
[2026-10-22 22:16:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:28] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:16:28] testing.INFO: Old stock: 10  
[2026-10-22 22:16:28] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:28] testing.INFO: New stock: 8  
[2026-10-22 22:16:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:16:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:29] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:16:29] testing.INFO: Old stock: 10  
[2026-10-22 22:16:29] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:16:29] testing.INFO: New stock: 9  
[2026-10-22 22:16:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:16:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:16:00+02:00"}} 
[2026-10-22 22:16:29] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:16:29] testing.INFO: Old stock: 10  
[2026-10-22 22:16:29] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:16:29] testing.INFO: New stock: 9  
[2026-10-22 22:16:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:16:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:16:29+02:00"}} 
[2026-10-22 22:16:29] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:16:29] testing.INFO: Old stock: 10  
[2026-10-22 22:16:29] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:16:29] testing.INFO: New stock: 9  
[2026-10-22 22:16:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:16:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:16:29+02:00"}} 
[2026-10-22 22:16:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:16:29+02:00"}} 
[2026-10-22 22:16:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:16:29+02:00"}} 
[2026-10-22 22:16:29] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:16:29] testing.INFO: Old stock: 5  
[2026-10-22 22:16:29] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:16:29] testing.INFO: New stock: 2  
[2026-10-22 22:16:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:16:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:16:30+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:16:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:16:30+02:00"}} 
[2026-10-22 22:16:30] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:16:30] testing.INFO: Old stock: 10  
[2026-10-22 22:16:30] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:16:30] testing.INFO: New stock: 9  
[2026-10-22 22:16:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:16:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada6f21640fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:33] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:16:33] testing.INFO: Old stock: 16  
[2026-10-22 22:16:33] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:16:33] testing.INFO: New stock: 10  
[2026-10-22 22:16:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f21640fd"} 
[2026-10-22 22:16:34] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:16:34] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:16:34] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:16:34"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:16:34] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:16:35] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:16:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f24419e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:36] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-22 22:16:36] testing.INFO: Old stock: 7  
[2026-10-22 22:16:36] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:36] testing.INFO: New stock: 5  
[2026-10-22 22:16:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f24419e0"} 
[2026-10-22 22:16:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6f250c90f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:37] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:16:37] testing.INFO: Old stock: 13  
[2026-10-22 22:16:37] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:16:37] testing.INFO: New stock: 8  
[2026-10-22 22:16:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f250c90f"} 
[2026-10-22 22:16:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6f251b6ee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:37] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:16:37] testing.INFO: Old stock: 8  
[2026-10-22 22:16:37] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:16:37] testing.INFO: New stock: 4  
[2026-10-22 22:16:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f251b6ee"} 
[2026-10-22 22:16:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada6f2575d8e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:37] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-22 22:16:37] testing.INFO: Old stock: 8  
[2026-10-22 22:16:37] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:16:37] testing.INFO: New stock: 2  
[2026-10-22 22:16:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2575d8e"} 
[2026-10-22 22:16:38] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:16:38] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:16:38] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:16:38"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:16:38] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:16:42] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:16:42"}  
[2026-10-22 22:16:42] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:16:42] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:16:42] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:16:42] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:16:42] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:16:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6f2aa1af7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:42] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:16:42] testing.INFO: Old stock: 70  
[2026-10-22 22:16:42] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:16:42] testing.INFO: New stock: 65  
[2026-10-22 22:16:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2aa1af7"} 
[2026-10-22 22:16:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:16:42] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:16:42] testing.INFO: Old stock: 62  
[2026-10-22 22:16:42] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:16:42] testing.INFO: New stock: 60  
[2026-10-22 22:16:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:16:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6f2aeb03b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:42] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:16:42] testing.INFO: Old stock: 59  
[2026-10-22 22:16:42] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:16:42] testing.INFO: New stock: 55  
[2026-10-22 22:16:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2aeb03b"} 
[2026-10-22 22:16:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6f2bb8c29","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:16:43] testing.INFO: Old stock: 10  
[2026-10-22 22:16:43] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:16:43] testing.INFO: New stock: 6  
[2026-10-22 22:16:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2bb8c29"} 
[2026-10-22 22:16:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6f2be8736","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:43] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:16:43] testing.INFO: Old stock: 10  
[2026-10-22 22:16:43] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:16:43] testing.INFO: New stock: 5  
[2026-10-22 22:16:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2be8736"} 
[2026-10-22 22:16:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6f2c282f1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:44] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:16:44] testing.INFO: Old stock: 10  
[2026-10-22 22:16:44] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:16:44] testing.INFO: New stock: 6  
[2026-10-22 22:16:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2c282f1"} 
[2026-10-22 22:16:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6f2c6c1cd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:44] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:16:44] testing.INFO: Old stock: 5  
[2026-10-22 22:16:44] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:16:44] testing.INFO: New stock: 1  
[2026-10-22 22:16:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2c6c1cd"} 
[2026-10-22 22:16:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6f2c9e614","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:44] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:16:44] testing.INFO: Old stock: 10  
[2026-10-22 22:16:44] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:16:44] testing.INFO: New stock: 5  
[2026-10-22 22:16:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2c9e614"} 
[2026-10-22 22:16:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6f2cef3ec","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:45] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:16:45] testing.INFO: Old stock: 12  
[2026-10-22 22:16:45] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:16:45] testing.INFO: New stock: 7  
[2026-10-22 22:16:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2cef3ec"} 
[2026-10-22 22:16:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6f2d2419b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:16:45] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:16:45] testing.INFO: Old stock: 12  
[2026-10-22 22:16:45] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:16:45] testing.INFO: New stock: 7  
[2026-10-22 22:16:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f2d2419b"} 
[2026-10-22 22:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada6f7db0c23","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:05] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:05] testing.INFO: Old stock: 100  
[2026-10-22 22:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:18:05] testing.INFO: New stock: 99  
[2026-10-22 22:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f7db0c23"} 
[2026-10-22 22:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f7dd51f3","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:18:05] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:05] testing.INFO: Old stock: 99  
[2026-10-22 22:18:05] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:05] testing.INFO: New stock: 97  
[2026-10-22 22:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f7dd51f3"} 
[2026-10-22 22:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f7ddfa93","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f7ea2593","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:06] testing.INFO: Old stock: 50  
[2026-10-22 22:18:06] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:06] testing.INFO: New stock: 48  
[2026-10-22 22:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f7ea2593"} 
[2026-10-22 22:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f7ec0e4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:06] testing.INFO: Old stock: 48  
[2026-10-22 22:18:06] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:18:06] testing.INFO: New stock: 45  
[2026-10-22 22:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f7ec0e4c"} 
[2026-10-22 22:18:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f7f5156c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:07] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:18:07] testing.INFO: Old stock: 20  
[2026-10-22 22:18:07] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:07] testing.INFO: New stock: 18  
[2026-10-22 22:18:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f7f5156c"} 
[2026-10-22 22:18:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f8a15af5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:18] testing.INFO: Old stock: 50  
[2026-10-22 22:18:18] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:18] testing.INFO: New stock: 48  
[2026-10-22 22:18:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f8a15af5"} 
[2026-10-22 22:18:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f8a46fcf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:18] testing.INFO: Old stock: 48  
[2026-10-22 22:18:18] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:18:18] testing.INFO: New stock: 45  
[2026-10-22 22:18:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f8a46fcf"} 
[2026-10-22 22:18:36] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:18:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f9e7f317","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:38] testing.INFO: Old stock: 10  
[2026-10-22 22:18:38] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:18:38] testing.INFO: New stock: 7  
[2026-10-22 22:18:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f9e7f317"} 
[2026-10-22 22:18:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada6f9ea9a66","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:38] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:38] testing.INFO: Old stock: 10  
[2026-10-22 22:18:38] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:38] testing.INFO: New stock: 8  
[2026-10-22 22:18:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f9ea9a66"} 
[2026-10-22 22:18:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f9ed8559","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:39] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6f9f03ee2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada6f9f2b60f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f9f53d6c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:18:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f9f6f64a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:18:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6f9fc33de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:39] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:39] testing.INFO: Old stock: 10  
[2026-10-22 22:18:39] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:39] testing.INFO: New stock: 8  
[2026-10-22 22:18:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6f9fc33de"} 
[2026-10-22 22:18:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fa01acdf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:40] testing.INFO: Old stock: 10  
[2026-10-22 22:18:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:40] testing.INFO: New stock: 8  
[2026-10-22 22:18:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa01acdf"} 
[2026-10-22 22:18:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fa054a9c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:18:40] testing.INFO: Old stock: 10  
[2026-10-22 22:18:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:40] testing.INFO: New stock: 8  
[2026-10-22 22:18:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa054a9c"} 
[2026-10-22 22:18:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fa088236","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:18:40] testing.INFO: Old stock: 3  
[2026-10-22 22:18:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:40] testing.INFO: New stock: 1  
[2026-10-22 22:18:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa088236"} 
[2026-10-22 22:18:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fa0f0a4b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:41] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:18:41] testing.INFO: Old stock: 10  
[2026-10-22 22:18:41] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:41] testing.INFO: New stock: 8  
[2026-10-22 22:18:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa0f0a4b"} 
[2026-10-22 22:18:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:41] testing.INFO: Old stock: 10  
[2026-10-22 22:18:41] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:41] testing.INFO: New stock: 8  
[2026-10-22 22:18:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:18:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:41] testing.INFO: Old stock: 10  
[2026-10-22 22:18:41] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:18:41] testing.INFO: New stock: 9  
[2026-10-22 22:18:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:18:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:18:00+02:00"}} 
[2026-10-22 22:18:41] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:18:41] testing.INFO: Old stock: 10  
[2026-10-22 22:18:41] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:18:41] testing.INFO: New stock: 9  
[2026-10-22 22:18:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:18:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:18:41+02:00"}} 
[2026-10-22 22:18:41] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:18:41] testing.INFO: Old stock: 10  
[2026-10-22 22:18:41] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:18:41] testing.INFO: New stock: 9  
[2026-10-22 22:18:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:18:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:18:41+02:00"}} 
[2026-10-22 22:18:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:18:42+02:00"}} 
[2026-10-22 22:18:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:18:42+02:00"}} 
[2026-10-22 22:18:42] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:18:42] testing.INFO: Old stock: 5  
[2026-10-22 22:18:42] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:18:42] testing.INFO: New stock: 2  
[2026-10-22 22:18:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:18:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:18:42+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:18:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:18:42+02:00"}} 
[2026-10-22 22:18:42] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:18:42] testing.INFO: Old stock: 10  
[2026-10-22 22:18:42] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:18:42] testing.INFO: New stock: 9  
[2026-10-22 22:18:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:18:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada6fa596f6b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:45] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:18:45] testing.INFO: Old stock: 16  
[2026-10-22 22:18:45] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:18:45] testing.INFO: New stock: 10  
[2026-10-22 22:18:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa596f6b"} 
[2026-10-22 22:18:46] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:18:46] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:18:46] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:18:46"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:18:46] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:18:48] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:18:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fa886f09","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:48] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-22 22:18:48] testing.INFO: Old stock: 7  
[2026-10-22 22:18:48] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:48] testing.INFO: New stock: 5  
[2026-10-22 22:18:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa886f09"} 
[2026-10-22 22:18:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6fa942d54","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:49] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:18:49] testing.INFO: Old stock: 13  
[2026-10-22 22:18:49] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:18:49] testing.INFO: New stock: 8  
[2026-10-22 22:18:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa942d54"} 
[2026-10-22 22:18:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6fa95af15","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:49] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:18:49] testing.INFO: Old stock: 8  
[2026-10-22 22:18:49] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:18:49] testing.INFO: New stock: 4  
[2026-10-22 22:18:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa95af15"} 
[2026-10-22 22:18:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada6fa9af413","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:49] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-22 22:18:49] testing.INFO: Old stock: 8  
[2026-10-22 22:18:49] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:18:49] testing.INFO: New stock: 2  
[2026-10-22 22:18:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fa9af413"} 
[2026-10-22 22:18:50] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:18:50] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:18:50] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:18:50"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:18:50] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:18:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada6fae226f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:54] testing.INFO: Old stock: 100  
[2026-10-22 22:18:54] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:18:54] testing.INFO: New stock: 99  
[2026-10-22 22:18:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fae226f3"} 
[2026-10-22 22:18:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fae31951","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:18:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:18:54] testing.INFO: Old stock: 99  
[2026-10-22 22:18:54] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:54] testing.INFO: New stock: 97  
[2026-10-22 22:18:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fae31951"} 
[2026-10-22 22:18:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6fae435e7","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:18:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6faeed692","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:55] testing.INFO: Old stock: 50  
[2026-10-22 22:18:55] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:55] testing.INFO: New stock: 48  
[2026-10-22 22:18:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6faeed692"} 
[2026-10-22 22:18:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6faf172f5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:18:55] testing.INFO: Old stock: 48  
[2026-10-22 22:18:55] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:18:55] testing.INFO: New stock: 45  
[2026-10-22 22:18:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6faf172f5"} 
[2026-10-22 22:18:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fafc41f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:55] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:18:55] testing.INFO: Old stock: 20  
[2026-10-22 22:18:55] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:55] testing.INFO: New stock: 18  
[2026-10-22 22:18:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fafc41f0"} 
[2026-10-22 22:18:56] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:18:56"}  
[2026-10-22 22:18:56] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:18:56] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:18:56] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:18:56] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:18:56] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:18:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6fb107f3b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:18:57] testing.INFO: Old stock: 70  
[2026-10-22 22:18:57] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:18:57] testing.INFO: New stock: 65  
[2026-10-22 22:18:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb107f3b"} 
[2026-10-22 22:18:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:18:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:18:57] testing.INFO: Old stock: 62  
[2026-10-22 22:18:57] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:18:57] testing.INFO: New stock: 60  
[2026-10-22 22:18:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:18:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6fb150b35","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:18:57] testing.INFO: Old stock: 59  
[2026-10-22 22:18:57] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:18:57] testing.INFO: New stock: 55  
[2026-10-22 22:18:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb150b35"} 
[2026-10-22 22:18:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6fb20778b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:58] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:18:58] testing.INFO: Old stock: 10  
[2026-10-22 22:18:58] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:18:58] testing.INFO: New stock: 6  
[2026-10-22 22:18:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb20778b"} 
[2026-10-22 22:18:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6fb23b1bd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:58] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:18:58] testing.INFO: Old stock: 10  
[2026-10-22 22:18:58] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:18:58] testing.INFO: New stock: 5  
[2026-10-22 22:18:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb23b1bd"} 
[2026-10-22 22:18:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6fb274d91","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:58] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:18:58] testing.INFO: Old stock: 10  
[2026-10-22 22:18:58] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:18:58] testing.INFO: New stock: 6  
[2026-10-22 22:18:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb274d91"} 
[2026-10-22 22:18:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6fb2bcd41","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:58] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:18:58] testing.INFO: Old stock: 5  
[2026-10-22 22:18:58] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:18:58] testing.INFO: New stock: 1  
[2026-10-22 22:18:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb2bcd41"} 
[2026-10-22 22:18:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6fb2ed77d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:59] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:18:59] testing.INFO: Old stock: 10  
[2026-10-22 22:18:59] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:18:59] testing.INFO: New stock: 5  
[2026-10-22 22:18:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb2ed77d"} 
[2026-10-22 22:18:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6fb33f21b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:59] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:18:59] testing.INFO: Old stock: 12  
[2026-10-22 22:18:59] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:18:59] testing.INFO: New stock: 7  
[2026-10-22 22:18:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb33f21b"} 
[2026-10-22 22:18:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada6fb36bd19","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:18:59] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:18:59] testing.INFO: Old stock: 12  
[2026-10-22 22:18:59] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:18:59] testing.INFO: New stock: 7  
[2026-10-22 22:18:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fb36bd19"} 
[2026-10-22 22:19:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada6fc68e6a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:19:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:19:18] testing.INFO: Old stock: 100  
[2026-10-22 22:19:18] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:19:18] testing.INFO: New stock: 96  
[2026-10-22 22:19:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fc68e6a6"} 
[2026-10-22 22:19:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada6fc6c5a7e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:19:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:19:18] testing.INFO: Old stock: 96  
[2026-10-22 22:19:18] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:19:18] testing.INFO: New stock: 94  
[2026-10-22 22:19:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada6fc6c5a7e"} 
[2026-10-22 22:19:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada6fc6d39af","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:31:09] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:31:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada7294e327a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:31:17] testing.INFO: Old stock: 10  
[2026-10-22 22:31:17] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:31:17] testing.INFO: New stock: 7  
[2026-10-22 22:31:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7294e327a"} 
[2026-10-22 22:31:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada72958c7cd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:31:17] testing.INFO: Old stock: 10  
[2026-10-22 22:31:17] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:17] testing.INFO: New stock: 8  
[2026-10-22 22:31:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72958c7cd"} 
[2026-10-22 22:31:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada72961f7cc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:18] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada729685bad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada7296eb74a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72975071f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:31:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada7297bc83d","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:31:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada7298d9b97","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:31:21] testing.INFO: Old stock: 10  
[2026-10-22 22:31:21] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:21] testing.INFO: New stock: 8  
[2026-10-22 22:31:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7298d9b97"} 
[2026-10-22 22:31:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada7299ceb6c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:21] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:31:21] testing.INFO: Old stock: 10  
[2026-10-22 22:31:21] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:21] testing.INFO: New stock: 8  
[2026-10-22 22:31:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7299ceb6c"} 
[2026-10-22 22:31:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada729a675a9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:31:22] testing.INFO: Old stock: 10  
[2026-10-22 22:31:22] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:22] testing.INFO: New stock: 8  
[2026-10-22 22:31:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada729a675a9"} 
[2026-10-22 22:31:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada729ae4b5e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:23] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:31:23] testing.INFO: Old stock: 3  
[2026-10-22 22:31:23] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:23] testing.INFO: New stock: 1  
[2026-10-22 22:31:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada729ae4b5e"} 
[2026-10-22 22:31:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada729be8551","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:24] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:31:24] testing.INFO: Old stock: 10  
[2026-10-22 22:31:24] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:24] testing.INFO: New stock: 8  
[2026-10-22 22:31:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada729be8551"} 
[2026-10-22 22:31:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:24] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:31:24] testing.INFO: Old stock: 10  
[2026-10-22 22:31:24] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:24] testing.INFO: New stock: 8  
[2026-10-22 22:31:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:31:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:25] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:31:25] testing.INFO: Old stock: 10  
[2026-10-22 22:31:25] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:31:25] testing.INFO: New stock: 9  
[2026-10-22 22:31:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:31:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:31:00+02:00"}} 
[2026-10-22 22:31:25] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:31:25] testing.INFO: Old stock: 10  
[2026-10-22 22:31:25] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:31:25] testing.INFO: New stock: 9  
[2026-10-22 22:31:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:31:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:31:25+02:00"}} 
[2026-10-22 22:31:25] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:31:25] testing.INFO: Old stock: 10  
[2026-10-22 22:31:25] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:31:25] testing.INFO: New stock: 9  
[2026-10-22 22:31:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:31:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:31:26+02:00"}} 
[2026-10-22 22:31:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:31:26+02:00"}} 
[2026-10-22 22:31:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:31:26+02:00"}} 
[2026-10-22 22:31:26] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:31:26] testing.INFO: Old stock: 5  
[2026-10-22 22:31:26] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:31:26] testing.INFO: New stock: 2  
[2026-10-22 22:31:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:31:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:31:27+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:31:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:31:28+02:00"}} 
[2026-10-22 22:31:28] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:31:28] testing.INFO: Old stock: 10  
[2026-10-22 22:31:28] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:31:28] testing.INFO: New stock: 9  
[2026-10-22 22:31:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:31:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada72a6acf99","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:34] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:31:34] testing.INFO: Old stock: 16  
[2026-10-22 22:31:34] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:31:34] testing.INFO: New stock: 10  
[2026-10-22 22:31:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72a6acf99"} 
[2026-10-22 22:31:38] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:31:38] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:31:38] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:31:38"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:31:38] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:31:40] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:31:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-EXP-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72ae26736","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada72afd6ec8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:43] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:31:43] testing.INFO: Old stock: 13  
[2026-10-22 22:31:44] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:31:44] testing.INFO: New stock: 8  
[2026-10-22 22:31:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72afd6ec8"} 
[2026-10-22 22:31:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada72b00c5bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:44] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:31:44] testing.INFO: Old stock: 8  
[2026-10-22 22:31:44] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:31:44] testing.INFO: New stock: 4  
[2026-10-22 22:31:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72b00c5bc"} 
[2026-10-22 22:31:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada72b0d1fc3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:44] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-22 22:31:44] testing.INFO: Old stock: 8  
[2026-10-22 22:31:44] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:31:44] testing.INFO: New stock: 2  
[2026-10-22 22:31:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72b0d1fc3"} 
[2026-10-22 22:31:46] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:31:46] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:31:46] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:31:46"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:31:46] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:31:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada72bb98310","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:31:55] testing.INFO: Old stock: 100  
[2026-10-22 22:31:55] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:31:55] testing.INFO: New stock: 99  
[2026-10-22 22:31:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72bb98310"} 
[2026-10-22 22:31:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72bbc000b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:31:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:31:55] testing.INFO: Old stock: 99  
[2026-10-22 22:31:55] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:55] testing.INFO: New stock: 97  
[2026-10-22 22:31:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72bbc000b"} 
[2026-10-22 22:31:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada72bbdc68d","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:31:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72bd8b2c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:57] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:31:57] testing.INFO: Old stock: 50  
[2026-10-22 22:31:57] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:57] testing.INFO: New stock: 48  
[2026-10-22 22:31:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72bd8b2c5"} 
[2026-10-22 22:31:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada72bdd013a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:57] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:31:57] testing.INFO: Old stock: 48  
[2026-10-22 22:31:57] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:31:57] testing.INFO: New stock: 45  
[2026-10-22 22:31:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72bdd013a"} 
[2026-10-22 22:31:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72bf90c9b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:31:59] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:31:59] testing.INFO: Old stock: 20  
[2026-10-22 22:31:59] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:31:59] testing.INFO: New stock: 18  
[2026-10-22 22:31:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72bf90c9b"} 
[2026-10-22 22:32:02] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:32:02"}  
[2026-10-22 22:32:02] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:32:02] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:32:02] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:32:02] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:32:02] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:32:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada72c30407b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:03] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:32:03] testing.INFO: Old stock: 70  
[2026-10-22 22:32:03] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:32:03] testing.INFO: New stock: 65  
[2026-10-22 22:32:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c30407b"} 
[2026-10-22 22:32:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:32:03] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:32:03] testing.INFO: Old stock: 62  
[2026-10-22 22:32:03] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:03] testing.INFO: New stock: 60  
[2026-10-22 22:32:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:32:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada72c3b5e3b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:03] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:32:03] testing.INFO: Old stock: 59  
[2026-10-22 22:32:03] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:32:03] testing.INFO: New stock: 55  
[2026-10-22 22:32:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c3b5e3b"} 
[2026-10-22 22:32:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada72c54cce3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:05] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:32:05] testing.INFO: Old stock: 10  
[2026-10-22 22:32:05] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:32:05] testing.INFO: New stock: 6  
[2026-10-22 22:32:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c54cce3"} 
[2026-10-22 22:32:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada72c5d6e17","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:05] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:32:05] testing.INFO: Old stock: 10  
[2026-10-22 22:32:05] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:32:05] testing.INFO: New stock: 5  
[2026-10-22 22:32:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c5d6e17"} 
[2026-10-22 22:32:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada72c6717a1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:06] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:32:06] testing.INFO: Old stock: 10  
[2026-10-22 22:32:06] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:32:06] testing.INFO: New stock: 6  
[2026-10-22 22:32:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c6717a1"} 
[2026-10-22 22:32:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada72c738646","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:07] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:32:07] testing.INFO: Old stock: 5  
[2026-10-22 22:32:07] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:32:07] testing.INFO: New stock: 1  
[2026-10-22 22:32:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c738646"} 
[2026-10-22 22:32:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada72c7c67c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:07] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:32:07] testing.INFO: Old stock: 10  
[2026-10-22 22:32:07] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:32:07] testing.INFO: New stock: 5  
[2026-10-22 22:32:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c7c67c5"} 
[2026-10-22 22:32:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada72c88ca7d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:08] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:32:08] testing.INFO: Old stock: 12  
[2026-10-22 22:32:08] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:32:08] testing.INFO: New stock: 7  
[2026-10-22 22:32:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c88ca7d"} 
[2026-10-22 22:32:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada72c90c2a7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:09] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:32:09] testing.INFO: Old stock: 12  
[2026-10-22 22:32:09] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:32:09] testing.INFO: New stock: 7  
[2026-10-22 22:32:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72c90c2a7"} 
[2026-10-22 22:32:46] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:32:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada72f27afb5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:50] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:32:50] testing.INFO: Old stock: 10  
[2026-10-22 22:32:50] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:32:50] testing.INFO: New stock: 7  
[2026-10-22 22:32:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f27afb5"} 
[2026-10-22 22:32:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada72f2d503e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:50] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:32:50] testing.INFO: Old stock: 10  
[2026-10-22 22:32:50] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:50] testing.INFO: New stock: 8  
[2026-10-22 22:32:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f2d503e"} 
[2026-10-22 22:32:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada72f34fa36","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:51] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada72f3a331f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada72f3ef306","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f43fe94","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:32:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f48486f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:32:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f54eb33","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:32:53] testing.INFO: Old stock: 10  
[2026-10-22 22:32:53] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:53] testing.INFO: New stock: 8  
[2026-10-22 22:32:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f54eb33"} 
[2026-10-22 22:32:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f607934","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:54] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:32:54] testing.INFO: Old stock: 10  
[2026-10-22 22:32:54] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:54] testing.INFO: New stock: 8  
[2026-10-22 22:32:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f607934"} 
[2026-10-22 22:32:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f697196","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:54] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:32:54] testing.INFO: Old stock: 10  
[2026-10-22 22:32:54] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:54] testing.INFO: New stock: 8  
[2026-10-22 22:32:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f697196"} 
[2026-10-22 22:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f7278be","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:32:55] testing.INFO: Old stock: 3  
[2026-10-22 22:32:55] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:55] testing.INFO: New stock: 1  
[2026-10-22 22:32:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f7278be"} 
[2026-10-22 22:32:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada72f8049c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:56] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:32:56] testing.INFO: Old stock: 10  
[2026-10-22 22:32:56] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:56] testing.INFO: New stock: 8  
[2026-10-22 22:32:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada72f8049c1"} 
[2026-10-22 22:32:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:56] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:32:56] testing.INFO: Old stock: 10  
[2026-10-22 22:32:56] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:32:56] testing.INFO: New stock: 8  
[2026-10-22 22:32:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:32:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:32:56] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:32:56] testing.INFO: Old stock: 10  
[2026-10-22 22:32:56] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:32:56] testing.INFO: New stock: 9  
[2026-10-22 22:32:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:32:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:32:00+02:00"}} 
[2026-10-22 22:32:57] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:32:57] testing.INFO: Old stock: 10  
[2026-10-22 22:32:57] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:32:57] testing.INFO: New stock: 9  
[2026-10-22 22:32:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:32:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:32:57+02:00"}} 
[2026-10-22 22:32:58] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:32:58] testing.INFO: Old stock: 10  
[2026-10-22 22:32:58] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:32:58] testing.INFO: New stock: 9  
[2026-10-22 22:32:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:32:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:32:58+02:00"}} 
[2026-10-22 22:32:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:32:59+02:00"}} 
[2026-10-22 22:32:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:32:59+02:00"}} 
[2026-10-22 22:32:59] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:32:59] testing.INFO: Old stock: 5  
[2026-10-22 22:32:59] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:32:59] testing.INFO: New stock: 2  
[2026-10-22 22:32:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:32:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:33:00+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:33:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:33:00+02:00"}} 
[2026-10-22 22:33:00] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:33:00] testing.INFO: Old stock: 10  
[2026-10-22 22:33:00] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:33:00] testing.INFO: New stock: 9  
[2026-10-22 22:33:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:33:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada730535ff5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:09] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:33:09] testing.INFO: Old stock: 16  
[2026-10-22 22:33:09] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:33:09] testing.INFO: New stock: 10  
[2026-10-22 22:33:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada730535ff5"} 
[2026-10-22 22:33:13] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:33:13] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:33:13] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:33:13"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:33:13] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:33:16] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:33:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada730eac531","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada730ee2edd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:19] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-22 22:33:19] testing.INFO: Old stock: 2  
[2026-10-22 22:33:19] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:33:19] testing.INFO: New stock: 1  
[2026-10-22 22:33:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada730ee2edd"} 
[2026-10-22 22:33:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada7311379d9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:21] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:33:21] testing.INFO: Old stock: 13  
[2026-10-22 22:33:21] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:33:21] testing.INFO: New stock: 8  
[2026-10-22 22:33:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7311379d9"} 
[2026-10-22 22:33:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada731170460","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:21] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:33:21] testing.INFO: Old stock: 8  
[2026-10-22 22:33:21] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:33:21] testing.INFO: New stock: 4  
[2026-10-22 22:33:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada731170460"} 
[2026-10-22 22:33:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada731275692","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:22] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-22 22:33:22] testing.INFO: Old stock: 8  
[2026-10-22 22:33:22] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:33:22] testing.INFO: New stock: 2  
[2026-10-22 22:33:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada731275692"} 
[2026-10-22 22:33:24] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:33:24] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:33:24] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:33:24"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:33:24] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:33:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada732207eae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:33:38] testing.INFO: Old stock: 100  
[2026-10-22 22:33:38] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:33:38] testing.INFO: New stock: 99  
[2026-10-22 22:33:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada732207eae"} 
[2026-10-22 22:33:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada732238b6e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:33:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:33:38] testing.INFO: Old stock: 99  
[2026-10-22 22:33:38] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:33:38] testing.INFO: New stock: 97  
[2026-10-22 22:33:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada732238b6e"} 
[2026-10-22 22:33:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada73225f878","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:33:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada732480b03","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:33:40] testing.INFO: Old stock: 50  
[2026-10-22 22:33:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:33:40] testing.INFO: New stock: 48  
[2026-10-22 22:33:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada732480b03"} 
[2026-10-22 22:33:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada7324ddf30","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:33:41] testing.INFO: Old stock: 48  
[2026-10-22 22:33:41] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:33:41] testing.INFO: New stock: 45  
[2026-10-22 22:33:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7324ddf30"} 
[2026-10-22 22:33:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada73273c5b0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:33:43] testing.INFO: Old stock: 20  
[2026-10-22 22:33:43] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:33:43] testing.INFO: New stock: 18  
[2026-10-22 22:33:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73273c5b0"} 
[2026-10-22 22:33:47] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:33:47"}  
[2026-10-22 22:33:47] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:33:47] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:33:47] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:33:47] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:33:47] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:33:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada732bdfc0c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:48] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:33:48] testing.INFO: Old stock: 70  
[2026-10-22 22:33:48] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:33:48] testing.INFO: New stock: 65  
[2026-10-22 22:33:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada732bdfc0c"} 
[2026-10-22 22:33:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:33:48] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:33:48] testing.INFO: Old stock: 62  
[2026-10-22 22:33:48] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:33:48] testing.INFO: New stock: 60  
[2026-10-22 22:33:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:33:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada732cedeee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:49] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:33:49] testing.INFO: Old stock: 59  
[2026-10-22 22:33:49] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:33:49] testing.INFO: New stock: 55  
[2026-10-22 22:33:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada732cedeee"} 
[2026-10-22 22:33:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada732f5fe51","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:51] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:33:51] testing.INFO: Old stock: 10  
[2026-10-22 22:33:51] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:33:51] testing.INFO: New stock: 6  
[2026-10-22 22:33:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada732f5fe51"} 
[2026-10-22 22:33:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73302296f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:33:52] testing.INFO: Old stock: 10  
[2026-10-22 22:33:52] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:33:52] testing.INFO: New stock: 5  
[2026-10-22 22:33:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73302296f"} 
[2026-10-22 22:33:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada7330c7f95","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:52] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:33:52] testing.INFO: Old stock: 10  
[2026-10-22 22:33:52] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:33:52] testing.INFO: New stock: 6  
[2026-10-22 22:33:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7330c7f95"} 
[2026-10-22 22:33:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada7331b9f48","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:53] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:33:53] testing.INFO: Old stock: 5  
[2026-10-22 22:33:53] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:33:53] testing.INFO: New stock: 1  
[2026-10-22 22:33:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7331b9f48"} 
[2026-10-22 22:33:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada733255046","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:54] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:33:54] testing.INFO: Old stock: 10  
[2026-10-22 22:33:54] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:33:54] testing.INFO: New stock: 5  
[2026-10-22 22:33:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada733255046"} 
[2026-10-22 22:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada733339e85","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:55] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:33:55] testing.INFO: Old stock: 12  
[2026-10-22 22:33:55] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:33:55] testing.INFO: New stock: 7  
[2026-10-22 22:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada733339e85"} 
[2026-10-22 22:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada7333c4f48","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:33:55] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:33:55] testing.INFO: Old stock: 12  
[2026-10-22 22:33:55] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:33:55] testing.INFO: New stock: 7  
[2026-10-22 22:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7333c4f48"} 
[2026-10-22 22:35:29] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:35:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada739833348","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:36] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:35:36] testing.INFO: Old stock: 10  
[2026-10-22 22:35:36] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:35:36] testing.INFO: New stock: 7  
[2026-10-22 22:35:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada739833348"} 
[2026-10-22 22:35:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada7398c0702","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:35:36] testing.INFO: Old stock: 10  
[2026-10-22 22:35:36] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:36] testing.INFO: New stock: 8  
[2026-10-22 22:35:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7398c0702"} 
[2026-10-22 22:35:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada739960c43","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:37] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada7399c6c7c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada739a3774d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739a9ffd5","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:35:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739b0fae8","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:35:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739c13df0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:35:40] testing.INFO: Old stock: 10  
[2026-10-22 22:35:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:40] testing.INFO: New stock: 8  
[2026-10-22 22:35:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada739c13df0"} 
[2026-10-22 22:35:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739d057c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:35:41] testing.INFO: Old stock: 10  
[2026-10-22 22:35:41] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:41] testing.INFO: New stock: 8  
[2026-10-22 22:35:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada739d057c2"} 
[2026-10-22 22:35:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739dde130","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:42] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:35:42] testing.INFO: Old stock: 10  
[2026-10-22 22:35:42] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:42] testing.INFO: New stock: 8  
[2026-10-22 22:35:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada739dde130"} 
[2026-10-22 22:35:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739e8c069","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:42] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:35:42] testing.INFO: Old stock: 3  
[2026-10-22 22:35:42] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:42] testing.INFO: New stock: 1  
[2026-10-22 22:35:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada739e8c069"} 
[2026-10-22 22:35:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada739fe4bf1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:44] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:35:44] testing.INFO: Old stock: 10  
[2026-10-22 22:35:44] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:44] testing.INFO: New stock: 8  
[2026-10-22 22:35:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada739fe4bf1"} 
[2026-10-22 22:35:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:44] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:35:44] testing.INFO: Old stock: 10  
[2026-10-22 22:35:44] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:35:44] testing.INFO: New stock: 8  
[2026-10-22 22:35:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:35:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:45] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:35:45] testing.INFO: Old stock: 10  
[2026-10-22 22:35:45] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:35:45] testing.INFO: New stock: 9  
[2026-10-22 22:35:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:35:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:35:00+02:00"}} 
[2026-10-22 22:35:46] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:35:46] testing.INFO: Old stock: 10  
[2026-10-22 22:35:46] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:35:46] testing.INFO: New stock: 9  
[2026-10-22 22:35:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:35:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:35:46+02:00"}} 
[2026-10-22 22:35:46] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:35:46] testing.INFO: Old stock: 10  
[2026-10-22 22:35:46] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:35:46] testing.INFO: New stock: 9  
[2026-10-22 22:35:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:35:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:35:47+02:00"}} 
[2026-10-22 22:35:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:35:48+02:00"}} 
[2026-10-22 22:35:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:35:48+02:00"}} 
[2026-10-22 22:35:48] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:35:48] testing.INFO: Old stock: 5  
[2026-10-22 22:35:48] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:35:48] testing.INFO: New stock: 2  
[2026-10-22 22:35:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:35:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:35:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:35:49+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:35:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:35:50+02:00"}} 
[2026-10-22 22:35:50] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:35:50] testing.INFO: Old stock: 10  
[2026-10-22 22:35:50] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:35:50] testing.INFO: New stock: 9  
[2026-10-22 22:35:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:36:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada73b14be6b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:01] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:36:01] testing.INFO: Old stock: 16  
[2026-10-22 22:36:01] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:36:01] testing.INFO: New stock: 10  
[2026-10-22 22:36:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73b14be6b"} 
[2026-10-22 22:36:06] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:36:06] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:36:06] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:36:06"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:36:06] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:36:10] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:36:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada73bc043f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada73bc35051","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:12] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-22 22:36:12] testing.INFO: Old stock: 2  
[2026-10-22 22:36:12] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:36:12] testing.INFO: New stock: 1  
[2026-10-22 22:36:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73bc35051"} 
[2026-10-22 22:36:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73be72e57","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:14] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:36:14] testing.INFO: Old stock: 13  
[2026-10-22 22:36:14] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:36:14] testing.INFO: New stock: 8  
[2026-10-22 22:36:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73be72e57"} 
[2026-10-22 22:36:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada73bea9d6f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:14] testing.INFO: Stock deduction for product: Test Product 22  
[2026-10-22 22:36:14] testing.INFO: Old stock: 8  
[2026-10-22 22:36:14] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:36:14] testing.INFO: New stock: 4  
[2026-10-22 22:36:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73bea9d6f"} 
[2026-10-22 22:36:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada73bfe7527","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:16] testing.INFO: Stock deduction for product: Test Product 23  
[2026-10-22 22:36:16] testing.INFO: Old stock: 8  
[2026-10-22 22:36:16] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:36:16] testing.INFO: New stock: 2  
[2026-10-22 22:36:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73bfe7527"} 
[2026-10-22 22:36:17] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:36:17] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:36:17] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:36:17"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:36:17] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:36:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada73d0f0590","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:33] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:36:33] testing.INFO: Old stock: 100  
[2026-10-22 22:36:33] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:36:33] testing.INFO: New stock: 99  
[2026-10-22 22:36:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73d0f0590"} 
[2026-10-22 22:36:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada73d12f1ce","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:36:33] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:36:33] testing.INFO: Old stock: 99  
[2026-10-22 22:36:33] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:36:33] testing.INFO: New stock: 97  
[2026-10-22 22:36:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73d12f1ce"} 
[2026-10-22 22:36:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada73d158041","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:36:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada73d39c7d8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:36:35] testing.INFO: Old stock: 50  
[2026-10-22 22:36:35] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:36:35] testing.INFO: New stock: 48  
[2026-10-22 22:36:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73d39c7d8"} 
[2026-10-22 22:36:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada73d3ee92e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:36:36] testing.INFO: Old stock: 48  
[2026-10-22 22:36:36] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:36:36] testing.INFO: New stock: 45  
[2026-10-22 22:36:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73d3ee92e"} 
[2026-10-22 22:36:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada73d63b8de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:36:38] testing.INFO: Old stock: 20  
[2026-10-22 22:36:38] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:36:38] testing.INFO: New stock: 18  
[2026-10-22 22:36:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73d63b8de"} 
[2026-10-22 22:36:42] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:36:42"}  
[2026-10-22 22:36:42] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:36:42] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:36:42] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:36:42] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:36:42] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:36:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73dacec4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:42] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:36:42] testing.INFO: Old stock: 70  
[2026-10-22 22:36:42] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:36:42] testing.INFO: New stock: 65  
[2026-10-22 22:36:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73dacec4a"} 
[2026-10-22 22:36:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:36:43] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:36:43] testing.INFO: Old stock: 62  
[2026-10-22 22:36:43] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:36:43] testing.INFO: New stock: 60  
[2026-10-22 22:36:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:36:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada73dbcc115","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:43] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:36:43] testing.INFO: Old stock: 59  
[2026-10-22 22:36:43] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:36:43] testing.INFO: New stock: 55  
[2026-10-22 22:36:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73dbcc115"} 
[2026-10-22 22:36:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada73de14b0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:46] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:36:46] testing.INFO: Old stock: 10  
[2026-10-22 22:36:46] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:36:46] testing.INFO: New stock: 6  
[2026-10-22 22:36:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73de14b0d"} 
[2026-10-22 22:36:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73dee4994","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:47] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:36:47] testing.INFO: Old stock: 10  
[2026-10-22 22:36:47] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:36:47] testing.INFO: New stock: 5  
[2026-10-22 22:36:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73dee4994"} 
[2026-10-22 22:36:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada73df83590","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:47] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:36:47] testing.INFO: Old stock: 10  
[2026-10-22 22:36:47] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:36:47] testing.INFO: New stock: 6  
[2026-10-22 22:36:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73df83590"} 
[2026-10-22 22:36:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada73e026e12","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:48] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:36:48] testing.INFO: Old stock: 5  
[2026-10-22 22:36:48] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:36:48] testing.INFO: New stock: 1  
[2026-10-22 22:36:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73e026e12"} 
[2026-10-22 22:36:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73e0cf621","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:48] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:36:48] testing.INFO: Old stock: 10  
[2026-10-22 22:36:48] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:36:48] testing.INFO: New stock: 5  
[2026-10-22 22:36:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73e0cf621"} 
[2026-10-22 22:36:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73e1c6edc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:49] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:36:49] testing.INFO: Old stock: 12  
[2026-10-22 22:36:49] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:36:49] testing.INFO: New stock: 7  
[2026-10-22 22:36:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73e1c6edc"} 
[2026-10-22 22:36:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada73e266f64","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:36:50] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:36:50] testing.INFO: Old stock: 12  
[2026-10-22 22:36:50] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:36:50] testing.INFO: New stock: 7  
[2026-10-22 22:36:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada73e266f64"} 
[2026-10-22 22:46:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:46:07] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-22 22:46:07] testing.INFO: Old stock: 35  
[2026-10-22 22:46:07] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:46:07] testing.INFO: New stock: 33  
[2026-10-22 22:46:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-22 22:47:32] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-22 22:47:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada76686d640","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:36] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:47:36] testing.INFO: Old stock: 10  
[2026-10-22 22:47:36] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:47:36] testing.INFO: New stock: 7  
[2026-10-22 22:47:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76686d640"} 
[2026-10-22 22:47:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada7668d74b3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:47:36] testing.INFO: Old stock: 10  
[2026-10-22 22:47:36] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:36] testing.INFO: New stock: 8  
[2026-10-22 22:47:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7668d74b3"} 
[2026-10-22 22:47:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada76695377b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:37] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada76699697b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada7669e4d16","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766a3d312","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:47:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766a7e13a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-22 22:47:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766b5b0fc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:39] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:47:39] testing.INFO: Old stock: 10  
[2026-10-22 22:47:39] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:39] testing.INFO: New stock: 8  
[2026-10-22 22:47:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada766b5b0fc"} 
[2026-10-22 22:47:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766c1109a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:47:40] testing.INFO: Old stock: 10  
[2026-10-22 22:47:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:40] testing.INFO: New stock: 8  
[2026-10-22 22:47:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada766c1109a"} 
[2026-10-22 22:47:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766ca853e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:47:40] testing.INFO: Old stock: 10  
[2026-10-22 22:47:40] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:40] testing.INFO: New stock: 8  
[2026-10-22 22:47:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada766ca853e"} 
[2026-10-22 22:47:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766d12027","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:41] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:47:41] testing.INFO: Old stock: 3  
[2026-10-22 22:47:41] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:41] testing.INFO: New stock: 1  
[2026-10-22 22:47:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada766d12027"} 
[2026-10-22 22:47:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada766d9ec31","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:41] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-22 22:47:41] testing.INFO: Old stock: 10  
[2026-10-22 22:47:41] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:41] testing.INFO: New stock: 8  
[2026-10-22 22:47:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada766d9ec31"} 
[2026-10-22 22:47:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:42] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:47:42] testing.INFO: Old stock: 10  
[2026-10-22 22:47:42] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:47:42] testing.INFO: New stock: 8  
[2026-10-22 22:47:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:47:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:42] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:47:42] testing.INFO: Old stock: 10  
[2026-10-22 22:47:42] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:47:42] testing.INFO: New stock: 9  
[2026-10-22 22:47:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:47:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T20:47:00+02:00"}} 
[2026-10-22 22:47:42] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:47:42] testing.INFO: Old stock: 10  
[2026-10-22 22:47:42] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:47:42] testing.INFO: New stock: 9  
[2026-10-22 22:47:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:47:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T22:47:42+02:00"}} 
[2026-10-22 22:47:42] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:47:42] testing.INFO: Old stock: 10  
[2026-10-22 22:47:42] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:47:42] testing.INFO: New stock: 9  
[2026-10-22 22:47:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:47:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:47:43+02:00"}} 
[2026-10-22 22:47:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:47:43+02:00"}} 
[2026-10-22 22:47:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:47:43+02:00"}} 
[2026-10-22 22:47:43] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:47:43] testing.INFO: Old stock: 5  
[2026-10-22 22:47:43] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:47:43] testing.INFO: New stock: 2  
[2026-10-22 22:47:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:47:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:47:44+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-22 22:47:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T19:47:44+02:00"}} 
[2026-10-22 22:47:45] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-22 22:47:45] testing.INFO: Old stock: 10  
[2026-10-22 22:47:45] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:47:45] testing.INFO: New stock: 9  
[2026-10-22 22:47:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-22 22:47:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada767781eca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:51] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:47:51] testing.INFO: Old stock: 16  
[2026-10-22 22:47:51] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:47:51] testing.INFO: New stock: 10  
[2026-10-22 22:47:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada767781eca"} 
[2026-10-22 22:47:54] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-22 22:47:54] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:47:54] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-22 22:47:54"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:47:54] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-22 22:47:57] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-21"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:47:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada767f07ab0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada767f2d963","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:47:59] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-22 22:47:59] testing.INFO: Old stock: 2  
[2026-10-22 22:47:59] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:47:59] testing.INFO: New stock: 1  
[2026-10-22 22:47:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada767f2d963"} 
[2026-10-22 22:48:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:01] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-22 22:48:01] testing.INFO: Old stock: 35  
[2026-10-22 22:48:01] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:48:01] testing.INFO: New stock: 33  
[2026-10-22 22:48:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-22 22:48:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada768213882","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:02] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-22 22:48:02] testing.INFO: Old stock: 13  
[2026-10-22 22:48:02] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:48:02] testing.INFO: New stock: 8  
[2026-10-22 22:48:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada768213882"} 
[2026-10-22 22:48:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada76823d739","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:02] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-22 22:48:02] testing.INFO: Old stock: 8  
[2026-10-22 22:48:02] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:48:02] testing.INFO: New stock: 4  
[2026-10-22 22:48:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76823d739"} 
[2026-10-22 22:48:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada768301693","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:03] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-22 22:48:03] testing.INFO: Old stock: 8  
[2026-10-22 22:48:03] testing.INFO: Quantity deducted: 6  
[2026-10-22 22:48:03] testing.INFO: New stock: 2  
[2026-10-22 22:48:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada768301693"} 
[2026-10-22 22:48:03] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-22 22:48:03] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-22 22:48:03] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-22 22:48:03"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-22 22:48:03] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-22 22:48:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada76862216a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:48:06] testing.INFO: Old stock: 100  
[2026-10-22 22:48:06] testing.INFO: Quantity deducted: 1  
[2026-10-22 22:48:06] testing.INFO: New stock: 99  
[2026-10-22 22:48:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76862216a"} 
[2026-10-22 22:48:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada76862ba95","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-22 22:48:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-22 22:48:06] testing.INFO: Old stock: 99  
[2026-10-22 22:48:06] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:48:06] testing.INFO: New stock: 97  
[2026-10-22 22:48:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76862ba95"} 
[2026-10-22 22:48:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada768631da4","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-22 22:48:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada76869f396","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:48:06] testing.INFO: Old stock: 50  
[2026-10-22 22:48:06] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:48:06] testing.INFO: New stock: 48  
[2026-10-22 22:48:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76869f396"} 
[2026-10-22 22:48:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada7686b08a5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-22 22:48:06] testing.INFO: Old stock: 48  
[2026-10-22 22:48:06] testing.INFO: Quantity deducted: 3  
[2026-10-22 22:48:06] testing.INFO: New stock: 45  
[2026-10-22 22:48:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7686b08a5"} 
[2026-10-22 22:48:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada76871fbaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:07] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:48:07] testing.INFO: Old stock: 20  
[2026-10-22 22:48:07] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:48:07] testing.INFO: New stock: 18  
[2026-10-22 22:48:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76871fbaa"} 
[2026-10-22 22:48:08] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-22 22:48:08"}  
[2026-10-22 22:48:08] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-22 22:48:08] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-22 22:48:08] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-22 22:48:08] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-22 22:48:08] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-22 22:48:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada768841fc8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:08] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:48:08] testing.INFO: Old stock: 70  
[2026-10-22 22:48:08] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:48:08] testing.INFO: New stock: 65  
[2026-10-22 22:48:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada768841fc8"} 
[2026-10-22 22:48:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-22 22:48:08] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:48:08] testing.INFO: Old stock: 62  
[2026-10-22 22:48:08] testing.INFO: Quantity deducted: 2  
[2026-10-22 22:48:08] testing.INFO: New stock: 60  
[2026-10-22 22:48:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-22 22:48:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada768878137","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:08] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-22 22:48:08] testing.INFO: Old stock: 59  
[2026-10-22 22:48:08] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:48:08] testing.INFO: New stock: 55  
[2026-10-22 22:48:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada768878137"} 
[2026-10-22 22:48:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada7688f05ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-22 22:48:09] testing.INFO: Old stock: 10  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:48:09] testing.INFO: New stock: 6  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7688f05ad"} 
[2026-10-22 22:48:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada76891c62e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-22 22:48:09] testing.INFO: Old stock: 10  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:48:09] testing.INFO: New stock: 5  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76891c62e"} 
[2026-10-22 22:48:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada76893f8dc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-22 22:48:09] testing.INFO: Old stock: 10  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:48:09] testing.INFO: New stock: 6  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76893f8dc"} 
[2026-10-22 22:48:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada76897141b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-22 22:48:09] testing.INFO: Old stock: 5  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 4  
[2026-10-22 22:48:09] testing.INFO: New stock: 1  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada76897141b"} 
[2026-10-22 22:48:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada768993923","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-22 22:48:09] testing.INFO: Old stock: 10  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:48:09] testing.INFO: New stock: 5  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada768993923"} 
[2026-10-22 22:48:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada7689c3f04","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-22 22:48:09] testing.INFO: Old stock: 12  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:48:09] testing.INFO: New stock: 7  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7689c3f04"} 
[2026-10-22 22:48:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada7689e1c74","payment_method":"cash","payment_status":"paid"}} 
[2026-10-22 22:48:09] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-22 22:48:09] testing.INFO: Old stock: 12  
[2026-10-22 22:48:09] testing.INFO: Quantity deducted: 5  
[2026-10-22 22:48:09] testing.INFO: New stock: 7  
[2026-10-22 22:48:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada7689e1c74"} 
[2026-10-23 00:03:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada88366dc19","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:03:34] testing.INFO: Old stock: 200  
[2026-10-23 00:03:34] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:34] testing.INFO: New stock: 196  
[2026-10-23 00:03:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88366dc19"} 
[2026-10-23 00:03:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada883696fef","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 00:03:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:03:34] testing.INFO: Old stock: 196  
[2026-10-23 00:03:34] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:03:34] testing.INFO: New stock: 194  
[2026-10-23 00:03:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada883696fef"} 
[2026-10-23 00:03:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada88369f84b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 00:03:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada8836a98cd","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 00:03:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:03:34] testing.INFO: Old stock: 191  
[2026-10-23 00:03:34] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:03:34] testing.INFO: New stock: 190  
[2026-10-23 00:03:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8836a98cd"} 
[2026-10-23 00:03:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada883724cfc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:03:35] testing.INFO: Old stock: 200  
[2026-10-23 00:03:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:35] testing.INFO: New stock: 196  
[2026-10-23 00:03:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada883724cfc"} 
[2026-10-23 00:03:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada883730e01","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:03:35] testing.INFO: Old stock: 196  
[2026-10-23 00:03:35] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:03:35] testing.INFO: New stock: 194  
[2026-10-23 00:03:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada883730e01"} 
[2026-10-23 00:03:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada883777d8a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:03:35] testing.INFO: Old stock: 200  
[2026-10-23 00:03:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:35] testing.INFO: New stock: 196  
[2026-10-23 00:03:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada883777d8a"} 
[2026-10-23 00:03:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada88379010a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:03:35] testing.INFO: Old stock: 196  
[2026-10-23 00:03:35] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:03:35] testing.INFO: New stock: 195  
[2026-10-23 00:03:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88379010a"} 
[2026-10-23 00:03:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada8837bfb4f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:35] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:03:35] testing.INFO: Old stock: 200  
[2026-10-23 00:03:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:35] testing.INFO: New stock: 196  
[2026-10-23 00:03:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8837bfb4f"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada8842edba8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:03:47] testing.INFO: Old stock: 200  
[2026-10-23 00:03:47] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:47] testing.INFO: New stock: 196  
[2026-10-23 00:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8842edba8"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada88431b6ab","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 00:03:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:03:47] testing.INFO: Old stock: 196  
[2026-10-23 00:03:47] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:03:47] testing.INFO: New stock: 194  
[2026-10-23 00:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88431b6ab"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada8843230de","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada88433481b","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 00:03:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:03:47] testing.INFO: Old stock: 191  
[2026-10-23 00:03:47] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:03:47] testing.INFO: New stock: 190  
[2026-10-23 00:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88433481b"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada88438336a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:03:47] testing.INFO: Old stock: 200  
[2026-10-23 00:03:47] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:47] testing.INFO: New stock: 196  
[2026-10-23 00:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88438336a"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada8843958e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:03:47] testing.INFO: Old stock: 196  
[2026-10-23 00:03:47] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:03:47] testing.INFO: New stock: 194  
[2026-10-23 00:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8843958e0"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada8843cc987","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:03:47] testing.INFO: Old stock: 200  
[2026-10-23 00:03:47] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:47] testing.INFO: New stock: 196  
[2026-10-23 00:03:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8843cc987"} 
[2026-10-23 00:03:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada8843ebcbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:48] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:03:48] testing.INFO: Old stock: 196  
[2026-10-23 00:03:48] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:03:48] testing.INFO: New stock: 195  
[2026-10-23 00:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8843ebcbe"} 
[2026-10-23 00:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada88442e4ac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:03:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:03:48] testing.INFO: Old stock: 200  
[2026-10-23 00:03:48] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:03:48] testing.INFO: New stock: 196  
[2026-10-23 00:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88442e4ac"} 
[2026-10-23 00:03:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T23:33:48+02:00"}} 
[2026-10-23 00:03:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:03:48] testing.INFO: Old stock: 196  
[2026-10-23 00:03:48] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:03:48] testing.INFO: New stock: 195  
[2026-10-23 00:03:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-23 00:04:00] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada885231009","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:02] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:02] testing.INFO: Old stock: 200  
[2026-10-23 00:04:02] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:02] testing.INFO: New stock: 196  
[2026-10-23 00:04:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885231009"} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada885240297","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 00:04:02] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:02] testing.INFO: Old stock: 196  
[2026-10-23 00:04:02] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:02] testing.INFO: New stock: 194  
[2026-10-23 00:04:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885240297"} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada88524a8a1","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada885255034","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 00:04:02] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:02] testing.INFO: Old stock: 191  
[2026-10-23 00:04:02] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:02] testing.INFO: New stock: 190  
[2026-10-23 00:04:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885255034"} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada8852a1f41","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:02] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:02] testing.INFO: Old stock: 200  
[2026-10-23 00:04:02] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:02] testing.INFO: New stock: 196  
[2026-10-23 00:04:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8852a1f41"} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada8852b0046","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:02] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:02] testing.INFO: Old stock: 196  
[2026-10-23 00:04:02] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:02] testing.INFO: New stock: 194  
[2026-10-23 00:04:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8852b0046"} 
[2026-10-23 00:04:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada8852e18eb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:03] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:04:03] testing.INFO: Old stock: 200  
[2026-10-23 00:04:03] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:03] testing.INFO: New stock: 196  
[2026-10-23 00:04:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8852e18eb"} 
[2026-10-23 00:04:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada8853125b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:03] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:04:03] testing.INFO: Old stock: 196  
[2026-10-23 00:04:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:03] testing.INFO: New stock: 195  
[2026-10-23 00:04:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8853125b6"} 
[2026-10-23 00:04:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada88534236e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:03] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:04:03] testing.INFO: Old stock: 200  
[2026-10-23 00:04:03] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:03] testing.INFO: New stock: 196  
[2026-10-23 00:04:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88534236e"} 
[2026-10-23 00:04:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T23:34:03+02:00"}} 
[2026-10-23 00:04:03] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:04:03] testing.INFO: Old stock: 196  
[2026-10-23 00:04:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:03] testing.INFO: New stock: 195  
[2026-10-23 00:04:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-23 00:04:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada8853c896b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:03] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:03] testing.INFO: Old stock: 10  
[2026-10-23 00:04:03] testing.INFO: Quantity deducted: 3  
[2026-10-23 00:04:03] testing.INFO: New stock: 7  
[2026-10-23 00:04:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8853c896b"} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ada8853f35c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:04] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:04] testing.INFO: Old stock: 10  
[2026-10-23 00:04:04] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:04] testing.INFO: New stock: 8  
[2026-10-23 00:04:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8853f35c1"} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada885421c56","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada885437e93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ada885452d68","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada88546a028","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada885480e28","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 00:04:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada8854c202e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:04] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:04] testing.INFO: Old stock: 10  
[2026-10-23 00:04:04] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:04] testing.INFO: New stock: 8  
[2026-10-23 00:04:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8854c202e"} 
[2026-10-23 00:04:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada88550b257","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:05] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:05] testing.INFO: Old stock: 10  
[2026-10-23 00:04:05] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:05] testing.INFO: New stock: 8  
[2026-10-23 00:04:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88550b257"} 
[2026-10-23 00:04:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada88553a24d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:05] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:04:05] testing.INFO: Old stock: 10  
[2026-10-23 00:04:05] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:05] testing.INFO: New stock: 8  
[2026-10-23 00:04:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88553a24d"} 
[2026-10-23 00:04:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada88555e8b4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:05] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:04:05] testing.INFO: Old stock: 3  
[2026-10-23 00:04:05] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:05] testing.INFO: New stock: 1  
[2026-10-23 00:04:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88555e8b4"} 
[2026-10-23 00:04:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada8855b8fd3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:05] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-23 00:04:05] testing.INFO: Old stock: 10  
[2026-10-23 00:04:05] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:05] testing.INFO: New stock: 8  
[2026-10-23 00:04:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8855b8fd3"} 
[2026-10-23 00:04:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:06] testing.INFO: Old stock: 10  
[2026-10-23 00:04:06] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:06] testing.INFO: New stock: 8  
[2026-10-23 00:04:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:06] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:06] testing.INFO: Old stock: 10  
[2026-10-23 00:04:06] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:06] testing.INFO: New stock: 9  
[2026-10-23 00:04:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T22:04:00+02:00"}} 
[2026-10-23 00:04:06] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:04:06] testing.INFO: Old stock: 10  
[2026-10-23 00:04:06] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:06] testing.INFO: New stock: 9  
[2026-10-23 00:04:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T00:04:06+02:00"}} 
[2026-10-23 00:04:06] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:04:06] testing.INFO: Old stock: 10  
[2026-10-23 00:04:06] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:06] testing.INFO: New stock: 9  
[2026-10-23 00:04:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T00:04:06+02:00"}} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T00:04:06+02:00"}} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T00:04:06+02:00"}} 
[2026-10-23 00:04:06] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 00:04:06] testing.INFO: Old stock: 5  
[2026-10-23 00:04:06] testing.INFO: Quantity deducted: 3  
[2026-10-23 00:04:06] testing.INFO: New stock: 2  
[2026-10-23 00:04:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 00:04:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T00:04:06+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-23 00:04:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-22T21:04:07+02:00"}} 
[2026-10-23 00:04:07] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-23 00:04:07] testing.INFO: Old stock: 10  
[2026-10-23 00:04:07] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:07] testing.INFO: New stock: 9  
[2026-10-23 00:04:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 00:04:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada88597b27c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:09] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 00:04:09] testing.INFO: Old stock: 16  
[2026-10-23 00:04:09] testing.INFO: Quantity deducted: 6  
[2026-10-23 00:04:09] testing.INFO: New stock: 10  
[2026-10-23 00:04:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88597b27c"} 
[2026-10-23 00:04:10] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-23 00:04:10] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 00:04:10] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-23 00:04:10"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 00:04:10] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-23 00:04:11] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-22"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 00:04:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada885bd2af5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada885be84ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:11] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-23 00:04:11] testing.INFO: Old stock: 2  
[2026-10-23 00:04:11] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:11] testing.INFO: New stock: 1  
[2026-10-23 00:04:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885be84ff"} 
[2026-10-23 00:04:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:12] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-23 00:04:12] testing.INFO: Old stock: 35  
[2026-10-23 00:04:12] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:12] testing.INFO: New stock: 33  
[2026-10-23 00:04:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-23 00:04:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada885cd130d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:12] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 00:04:12] testing.INFO: Old stock: 13  
[2026-10-23 00:04:12] testing.INFO: Quantity deducted: 5  
[2026-10-23 00:04:12] testing.INFO: New stock: 8  
[2026-10-23 00:04:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885cd130d"} 
[2026-10-23 00:04:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada885cde493","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:12] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 00:04:12] testing.INFO: Old stock: 8  
[2026-10-23 00:04:12] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:12] testing.INFO: New stock: 4  
[2026-10-23 00:04:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885cde493"} 
[2026-10-23 00:04:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ada885d27ced","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:13] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-23 00:04:13] testing.INFO: Old stock: 8  
[2026-10-23 00:04:13] testing.INFO: Quantity deducted: 6  
[2026-10-23 00:04:13] testing.INFO: New stock: 2  
[2026-10-23 00:04:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada885d27ced"} 
[2026-10-23 00:04:13] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 00:04:13] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 00:04:13] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-23 00:04:13"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 00:04:13] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-23 00:04:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ada8860e14fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:16] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:16] testing.INFO: Old stock: 100  
[2026-10-23 00:04:16] testing.INFO: Quantity deducted: 1  
[2026-10-23 00:04:16] testing.INFO: New stock: 99  
[2026-10-23 00:04:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8860e14fa"} 
[2026-10-23 00:04:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada8860ee06a","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 00:04:16] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 00:04:16] testing.INFO: Old stock: 99  
[2026-10-23 00:04:16] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:16] testing.INFO: New stock: 97  
[2026-10-23 00:04:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8860ee06a"} 
[2026-10-23 00:04:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada8861022b2","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 00:04:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada886183dfd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:17] testing.INFO: Old stock: 50  
[2026-10-23 00:04:17] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:17] testing.INFO: New stock: 48  
[2026-10-23 00:04:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada886183dfd"} 
[2026-10-23 00:04:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ada886197b7d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 00:04:17] testing.INFO: Old stock: 48  
[2026-10-23 00:04:17] testing.INFO: Quantity deducted: 3  
[2026-10-23 00:04:17] testing.INFO: New stock: 45  
[2026-10-23 00:04:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada886197b7d"} 
[2026-10-23 00:04:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ada88622c1de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:18] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:04:18] testing.INFO: Old stock: 20  
[2026-10-23 00:04:18] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:18] testing.INFO: New stock: 18  
[2026-10-23 00:04:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88622c1de"} 
[2026-10-23 00:04:19] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-23 00:04:19"}  
[2026-10-23 00:04:19] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-23 00:04:19] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-23 00:04:19] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-23 00:04:19] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-23 00:04:19] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-23 00:04:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada886349fe7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:19] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 00:04:19] testing.INFO: Old stock: 70  
[2026-10-23 00:04:19] testing.INFO: Quantity deducted: 5  
[2026-10-23 00:04:19] testing.INFO: New stock: 65  
[2026-10-23 00:04:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada886349fe7"} 
[2026-10-23 00:04:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-23 00:04:19] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 00:04:19] testing.INFO: Old stock: 62  
[2026-10-23 00:04:19] testing.INFO: Quantity deducted: 2  
[2026-10-23 00:04:19] testing.INFO: New stock: 60  
[2026-10-23 00:04:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-23 00:04:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada88638593f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:19] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 00:04:19] testing.INFO: Old stock: 59  
[2026-10-23 00:04:19] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:19] testing.INFO: New stock: 55  
[2026-10-23 00:04:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88638593f"} 
[2026-10-23 00:04:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada88642510e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 00:04:20] testing.INFO: Old stock: 10  
[2026-10-23 00:04:20] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:20] testing.INFO: New stock: 6  
[2026-10-23 00:04:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88642510e"} 
[2026-10-23 00:04:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada88645b1a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:20] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 00:04:20] testing.INFO: Old stock: 10  
[2026-10-23 00:04:20] testing.INFO: Quantity deducted: 5  
[2026-10-23 00:04:20] testing.INFO: New stock: 5  
[2026-10-23 00:04:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88645b1a6"} 
[2026-10-23 00:04:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada886483c44","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:20] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 00:04:20] testing.INFO: Old stock: 10  
[2026-10-23 00:04:20] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:20] testing.INFO: New stock: 6  
[2026-10-23 00:04:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada886483c44"} 
[2026-10-23 00:04:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ada8864c2a6b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:20] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 00:04:20] testing.INFO: Old stock: 5  
[2026-10-23 00:04:20] testing.INFO: Quantity deducted: 4  
[2026-10-23 00:04:20] testing.INFO: New stock: 1  
[2026-10-23 00:04:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8864c2a6b"} 
[2026-10-23 00:04:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada8864f10ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:21] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-23 00:04:21] testing.INFO: Old stock: 10  
[2026-10-23 00:04:21] testing.INFO: Quantity deducted: 5  
[2026-10-23 00:04:21] testing.INFO: New stock: 5  
[2026-10-23 00:04:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada8864f10ea"} 
[2026-10-23 00:04:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada88653917e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:21] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-23 00:04:21] testing.INFO: Old stock: 12  
[2026-10-23 00:04:21] testing.INFO: Quantity deducted: 5  
[2026-10-23 00:04:21] testing.INFO: New stock: 7  
[2026-10-23 00:04:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88653917e"} 
[2026-10-23 00:04:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ada88655c531","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 00:04:21] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-23 00:04:21] testing.INFO: Old stock: 12  
[2026-10-23 00:04:21] testing.INFO: Quantity deducted: 5  
[2026-10-23 00:04:21] testing.INFO: New stock: 7  
[2026-10-23 00:04:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ada88655c531"} 
[2026-10-23 07:29:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0b5d37bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:25] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:25] testing.INFO: Old stock: 100  
[2026-10-23 07:29:25] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:25] testing.INFO: New stock: 96  
[2026-10-23 07:29:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b5d37bc"} 
[2026-10-23 07:29:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0b5f214e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:26] testing.INFO: Old stock: 96  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:26] testing.INFO: New stock: 65  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b5f214e"} 
[2026-10-23 07:29:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0b6230c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:26] testing.INFO: Old stock: 100  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:26] testing.INFO: New stock: 96  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b6230c6"} 
[2026-10-23 07:29:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0b62a05a","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:26] testing.INFO: Old stock: 96  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:26] testing.INFO: New stock: 65  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b62a05a"} 
[2026-10-23 07:29:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0b63d237","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:26] testing.INFO: Old stock: 100  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:26] testing.INFO: New stock: 96  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b63d237"} 
[2026-10-23 07:29:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0b6449bf","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:26] testing.INFO: Old stock: 96  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:26] testing.INFO: New stock: 65  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b6449bf"} 
[2026-10-23 07:29:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0b6690c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:26] testing.INFO: Old stock: 100  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:26] testing.INFO: New stock: 96  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b6690c8"} 
[2026-10-23 07:29:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0b67041c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:26] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:26] testing.INFO: Old stock: 96  
[2026-10-23 07:29:26] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:26] testing.INFO: New stock: 65  
[2026-10-23 07:29:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0b67041c"} 
[2026-10-23 07:29:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c2c2383","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:38] testing.INFO: Old stock: 100  
[2026-10-23 07:29:38] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:38] testing.INFO: New stock: 96  
[2026-10-23 07:29:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c2c2383"} 
[2026-10-23 07:29:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0c2cbf8c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:38] testing.INFO: Old stock: 96  
[2026-10-23 07:29:38] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:38] testing.INFO: New stock: 65  
[2026-10-23 07:29:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c2cbf8c"} 
[2026-10-23 07:29:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c2e6ce3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:38] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:38] testing.INFO: Old stock: 100  
[2026-10-23 07:29:38] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:38] testing.INFO: New stock: 96  
[2026-10-23 07:29:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c2e6ce3"} 
[2026-10-23 07:29:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0c2ed41c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:38] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:38] testing.INFO: Old stock: 96  
[2026-10-23 07:29:38] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:38] testing.INFO: New stock: 65  
[2026-10-23 07:29:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c2ed41c"} 
[2026-10-23 07:29:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c30cee4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:39] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:39] testing.INFO: Old stock: 100  
[2026-10-23 07:29:39] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:39] testing.INFO: New stock: 96  
[2026-10-23 07:29:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c30cee4"} 
[2026-10-23 07:29:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0c314931","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:39] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:39] testing.INFO: Old stock: 96  
[2026-10-23 07:29:39] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:39] testing.INFO: New stock: 65  
[2026-10-23 07:29:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c314931"} 
[2026-10-23 07:29:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c32ef32","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:39] testing.INFO: Old stock: 100  
[2026-10-23 07:29:39] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:39] testing.INFO: New stock: 96  
[2026-10-23 07:29:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c32ef32"} 
[2026-10-23 07:29:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0c33581e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:39] testing.INFO: Old stock: 96  
[2026-10-23 07:29:39] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:29:39] testing.INFO: New stock: 65  
[2026-10-23 07:29:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c33581e"} 
[2026-10-23 07:29:39] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c434089","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:40] testing.INFO: Old stock: 200  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:40] testing.INFO: New stock: 196  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c434089"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c43bf1f","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:40] testing.INFO: Old stock: 196  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:40] testing.INFO: New stock: 194  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c43bf1f"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0c44161f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0c4483aa","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:40] testing.INFO: Old stock: 191  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:40] testing.INFO: New stock: 190  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c4483aa"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c471184","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:40] testing.INFO: Old stock: 200  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:40] testing.INFO: New stock: 196  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c471184"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c479a9d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:40] testing.INFO: Old stock: 196  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:40] testing.INFO: New stock: 194  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c479a9d"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c499b32","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:40] testing.INFO: Old stock: 200  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:40] testing.INFO: New stock: 196  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c499b32"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0c4a9041","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:40] testing.INFO: Old stock: 196  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:40] testing.INFO: New stock: 195  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c4a9041"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0c4c5d95","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:40] testing.INFO: Old stock: 200  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:40] testing.INFO: New stock: 196  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c4c5d95"} 
[2026-10-23 07:29:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T06:59:40+02:00"}} 
[2026-10-23 07:29:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:40] testing.INFO: Old stock: 196  
[2026-10-23 07:29:40] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:40] testing.INFO: New stock: 195  
[2026-10-23 07:29:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0c51b4ec","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:41] testing.INFO: Old stock: 10  
[2026-10-23 07:29:41] testing.INFO: Quantity deducted: 3  
[2026-10-23 07:29:41] testing.INFO: New stock: 7  
[2026-10-23 07:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c51b4ec"} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adaf0c52e851","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:41] testing.INFO: Old stock: 10  
[2026-10-23 07:29:41] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:41] testing.INFO: New stock: 8  
[2026-10-23 07:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c52e851"} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0c53f902","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0c54d465","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adaf0c559665","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c566d42","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c573ce0","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c599ebd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:41] testing.INFO: Old stock: 10  
[2026-10-23 07:29:41] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:41] testing.INFO: New stock: 8  
[2026-10-23 07:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c599ebd"} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c5b542e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:41] testing.INFO: Old stock: 10  
[2026-10-23 07:29:41] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:41] testing.INFO: New stock: 8  
[2026-10-23 07:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c5b542e"} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c5cec0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:41] testing.INFO: Old stock: 10  
[2026-10-23 07:29:41] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:41] testing.INFO: New stock: 8  
[2026-10-23 07:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c5cec0d"} 
[2026-10-23 07:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c5e3535","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:41] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:41] testing.INFO: Old stock: 3  
[2026-10-23 07:29:41] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:41] testing.INFO: New stock: 1  
[2026-10-23 07:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c5e3535"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0c61c36a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-23 07:29:42] testing.INFO: Old stock: 10  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:42] testing.INFO: New stock: 8  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c61c36a"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:42] testing.INFO: Old stock: 10  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:42] testing.INFO: New stock: 8  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:42] testing.INFO: Old stock: 10  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:42] testing.INFO: New stock: 9  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T05:29:00+02:00"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:42] testing.INFO: Old stock: 10  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:42] testing.INFO: New stock: 9  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T07:29:42+02:00"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:42] testing.INFO: Old stock: 10  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:42] testing.INFO: New stock: 9  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:29:42+02:00"}} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:29:42+02:00"}} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:29:42+02:00"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 07:29:42] testing.INFO: Old stock: 5  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 3  
[2026-10-23 07:29:42] testing.INFO: New stock: 2  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:29:42+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-23 07:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T04:29:42+02:00"}} 
[2026-10-23 07:29:42] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-23 07:29:42] testing.INFO: Old stock: 10  
[2026-10-23 07:29:42] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:42] testing.INFO: New stock: 9  
[2026-10-23 07:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:29:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adaf0c8283ca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:44] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 07:29:44] testing.INFO: Old stock: 16  
[2026-10-23 07:29:44] testing.INFO: Quantity deducted: 6  
[2026-10-23 07:29:44] testing.INFO: New stock: 10  
[2026-10-23 07:29:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c8283ca"} 
[2026-10-23 07:29:44] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-23 07:29:44] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 07:29:44] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-23 07:29:44"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 07:29:44] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-23 07:29:45] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-22"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 07:29:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0c980d02","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0c987243","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:45] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-23 07:29:45] testing.INFO: Old stock: 2  
[2026-10-23 07:29:45] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:45] testing.INFO: New stock: 1  
[2026-10-23 07:29:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0c987243"} 
[2026-10-23 07:29:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:45] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-23 07:29:45] testing.INFO: Old stock: 35  
[2026-10-23 07:29:45] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:45] testing.INFO: New stock: 33  
[2026-10-23 07:29:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-23 07:29:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0ca0ea32","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:46] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 07:29:46] testing.INFO: Old stock: 13  
[2026-10-23 07:29:46] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:29:46] testing.INFO: New stock: 8  
[2026-10-23 07:29:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ca0ea32"} 
[2026-10-23 07:29:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0ca16960","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:46] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 07:29:46] testing.INFO: Old stock: 8  
[2026-10-23 07:29:46] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:46] testing.INFO: New stock: 4  
[2026-10-23 07:29:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ca16960"} 
[2026-10-23 07:29:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adaf0ca3bf8e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:46] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-23 07:29:46] testing.INFO: Old stock: 8  
[2026-10-23 07:29:46] testing.INFO: Quantity deducted: 6  
[2026-10-23 07:29:46] testing.INFO: New stock: 2  
[2026-10-23 07:29:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ca3bf8e"} 
[2026-10-23 07:29:46] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 07:29:46] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 07:29:46] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-23 07:29:46"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 07:29:46] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-23 07:29:46] testing.ERROR: imagefill(): Argument #1 ($image) must be of type GdImage, App\Models\BrandImage given {"exception":"[object] (TypeError(code: 0): imagefill(): Argument #1 ($image) must be of type GdImage, App\\Models\\BrandImage given at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/PwaController.php:105)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/PwaController.php(105): imagefill(Object(App/Models/BrandImage), 0, 0, 16777215)
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/PwaController.php(64): App/Http/Controllers/PwaController->render(192, false)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/PwaController->icon('icon', 192)
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('icon', Array)
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/PwaController), 'icon')
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/SecurityHeaders.php(20): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/SecurityHeaders->handle(Object(Illuminate/Http/Request), Object(Closure))
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/pwa/icon-192.p...', Array, Array, Array, Array)
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/ProductBatchTest.php(638): Illuminate/Foundation/Testing/TestCase->get('/pwa/icon-192.p...')
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/ProductBatchTest->test_app_manifest_and_icons_are_public()
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/ProductBatchTest))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#64 {main}
"} 
[2026-10-23 07:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0cd70489","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:49] testing.INFO: Old stock: 100  
[2026-10-23 07:29:49] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:29:49] testing.INFO: New stock: 99  
[2026-10-23 07:29:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cd70489"} 
[2026-10-23 07:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0cd76e5d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:29:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:29:49] testing.INFO: Old stock: 99  
[2026-10-23 07:29:49] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:49] testing.INFO: New stock: 97  
[2026-10-23 07:29:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cd76e5d"} 
[2026-10-23 07:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0cd7b303","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 07:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0cdc545c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:49] testing.INFO: Old stock: 50  
[2026-10-23 07:29:49] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:49] testing.INFO: New stock: 48  
[2026-10-23 07:29:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cdc545c"} 
[2026-10-23 07:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0cdd0cbb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:29:49] testing.INFO: Old stock: 48  
[2026-10-23 07:29:49] testing.INFO: Quantity deducted: 3  
[2026-10-23 07:29:49] testing.INFO: New stock: 45  
[2026-10-23 07:29:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cdd0cbb"} 
[2026-10-23 07:29:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0ce2857a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:50] testing.INFO: Old stock: 20  
[2026-10-23 07:29:50] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:50] testing.INFO: New stock: 18  
[2026-10-23 07:29:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ce2857a"} 
[2026-10-23 07:29:50] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-23 07:29:50"}  
[2026-10-23 07:29:50] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-23 07:29:50] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-23 07:29:50] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-23 07:29:50] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-23 07:29:50] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-23 07:29:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0cec8c35","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:50] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 07:29:50] testing.INFO: Old stock: 70  
[2026-10-23 07:29:50] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:29:50] testing.INFO: New stock: 65  
[2026-10-23 07:29:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cec8c35"} 
[2026-10-23 07:29:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-23 07:29:50] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 07:29:50] testing.INFO: Old stock: 62  
[2026-10-23 07:29:50] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:29:50] testing.INFO: New stock: 60  
[2026-10-23 07:29:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-23 07:29:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0ceec763","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:50] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 07:29:50] testing.INFO: Old stock: 59  
[2026-10-23 07:29:50] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:50] testing.INFO: New stock: 55  
[2026-10-23 07:29:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ceec763"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0cf45e17","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:29:51] testing.INFO: Old stock: 10  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:51] testing.INFO: New stock: 6  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cf45e17"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0cf5c2d7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:29:51] testing.INFO: Old stock: 10  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:29:51] testing.INFO: New stock: 5  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cf5c2d7"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0cf73e5b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 07:29:51] testing.INFO: Old stock: 10  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:51] testing.INFO: New stock: 6  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cf73e5b"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0cf9439e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 07:29:51] testing.INFO: Old stock: 5  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:29:51] testing.INFO: New stock: 1  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cf9439e"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0cfaa57e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-23 07:29:51] testing.INFO: Old stock: 10  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:29:51] testing.INFO: New stock: 5  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cfaa57e"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0cfcba53","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-23 07:29:51] testing.INFO: Old stock: 12  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:29:51] testing.INFO: New stock: 7  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cfcba53"} 
[2026-10-23 07:29:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0cfdda55","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:29:51] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-23 07:29:51] testing.INFO: Old stock: 12  
[2026-10-23 07:29:51] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:29:51] testing.INFO: New stock: 7  
[2026-10-23 07:29:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0cfdda55"} 
[2026-10-23 07:30:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e3e4475","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:11] testing.INFO: Old stock: 100  
[2026-10-23 07:30:11] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:11] testing.INFO: New stock: 96  
[2026-10-23 07:30:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e3e4475"} 
[2026-10-23 07:30:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0e3ecf33","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:11] testing.INFO: Old stock: 96  
[2026-10-23 07:30:11] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:11] testing.INFO: New stock: 65  
[2026-10-23 07:30:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e3ecf33"} 
[2026-10-23 07:30:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e412246","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:12] testing.INFO: Old stock: 100  
[2026-10-23 07:30:12] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:12] testing.INFO: New stock: 96  
[2026-10-23 07:30:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e412246"} 
[2026-10-23 07:30:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0e4182a3","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:12] testing.INFO: Old stock: 96  
[2026-10-23 07:30:12] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:12] testing.INFO: New stock: 65  
[2026-10-23 07:30:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e4182a3"} 
[2026-10-23 07:30:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e42b0d9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:12] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:12] testing.INFO: Old stock: 100  
[2026-10-23 07:30:12] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:12] testing.INFO: New stock: 96  
[2026-10-23 07:30:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e42b0d9"} 
[2026-10-23 07:30:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0e43223d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:12] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:12] testing.INFO: Old stock: 96  
[2026-10-23 07:30:12] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:12] testing.INFO: New stock: 65  
[2026-10-23 07:30:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e43223d"} 
[2026-10-23 07:30:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e44ca55","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:12] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:12] testing.INFO: Old stock: 100  
[2026-10-23 07:30:12] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:12] testing.INFO: New stock: 96  
[2026-10-23 07:30:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e44ca55"} 
[2026-10-23 07:30:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0e453215","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:12] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:12] testing.INFO: Old stock: 96  
[2026-10-23 07:30:12] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:12] testing.INFO: New stock: 65  
[2026-10-23 07:30:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e453215"} 
[2026-10-23 07:30:12] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e53f5eb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:13] testing.INFO: Old stock: 200  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:13] testing.INFO: New stock: 196  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e53f5eb"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e54555b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:13] testing.INFO: Old stock: 196  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:13] testing.INFO: New stock: 194  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e54555b"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0e549ec8","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0e54f8a1","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:13] testing.INFO: Old stock: 191  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:13] testing.INFO: New stock: 190  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e54f8a1"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e5767d7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:13] testing.INFO: Old stock: 200  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:13] testing.INFO: New stock: 196  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e5767d7"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e57d963","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:13] testing.INFO: Old stock: 196  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:13] testing.INFO: New stock: 194  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e57d963"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e59c1b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:13] testing.INFO: Old stock: 200  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:13] testing.INFO: New stock: 196  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e59c1b7"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0e5ac199","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:13] testing.INFO: Old stock: 196  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:13] testing.INFO: New stock: 195  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e5ac199"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0e5c8e4b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:13] testing.INFO: Old stock: 200  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:13] testing.INFO: New stock: 196  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e5c8e4b"} 
[2026-10-23 07:30:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:00:13+02:00"}} 
[2026-10-23 07:30:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:13] testing.INFO: Old stock: 196  
[2026-10-23 07:30:13] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:13] testing.INFO: New stock: 195  
[2026-10-23 07:30:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0e61eb0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:14] testing.INFO: Old stock: 10  
[2026-10-23 07:30:14] testing.INFO: Quantity deducted: 3  
[2026-10-23 07:30:14] testing.INFO: New stock: 7  
[2026-10-23 07:30:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e61eb0d"} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adaf0e63190f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:14] testing.INFO: Old stock: 10  
[2026-10-23 07:30:14] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:14] testing.INFO: New stock: 8  
[2026-10-23 07:30:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e63190f"} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0e643bd9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0e650d48","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adaf0e65dea4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e66a802","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e678139","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e69d842","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:14] testing.INFO: Old stock: 10  
[2026-10-23 07:30:14] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:14] testing.INFO: New stock: 8  
[2026-10-23 07:30:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e69d842"} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e6b9489","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:14] testing.INFO: Old stock: 10  
[2026-10-23 07:30:14] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:14] testing.INFO: New stock: 8  
[2026-10-23 07:30:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e6b9489"} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e6d3851","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:14] testing.INFO: Old stock: 10  
[2026-10-23 07:30:14] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:14] testing.INFO: New stock: 8  
[2026-10-23 07:30:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e6d3851"} 
[2026-10-23 07:30:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e6e8b44","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:14] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:14] testing.INFO: Old stock: 3  
[2026-10-23 07:30:14] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:14] testing.INFO: New stock: 1  
[2026-10-23 07:30:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e6e8b44"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0e71f77d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-23 07:30:15] testing.INFO: Old stock: 10  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:15] testing.INFO: New stock: 8  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e71f77d"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:15] testing.INFO: Old stock: 10  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:15] testing.INFO: New stock: 8  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:15] testing.INFO: Old stock: 10  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:15] testing.INFO: New stock: 9  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T05:30:00+02:00"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:15] testing.INFO: Old stock: 10  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:15] testing.INFO: New stock: 9  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T07:30:15+02:00"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:15] testing.INFO: Old stock: 10  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:15] testing.INFO: New stock: 9  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:30:15+02:00"}} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:30:15+02:00"}} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:30:15+02:00"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 07:30:15] testing.INFO: Old stock: 5  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 3  
[2026-10-23 07:30:15] testing.INFO: New stock: 2  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:30:15+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-23 07:30:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T04:30:15+02:00"}} 
[2026-10-23 07:30:15] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-23 07:30:15] testing.INFO: Old stock: 10  
[2026-10-23 07:30:15] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:15] testing.INFO: New stock: 9  
[2026-10-23 07:30:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 07:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adaf0e907e85","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:17] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 07:30:17] testing.INFO: Old stock: 16  
[2026-10-23 07:30:17] testing.INFO: Quantity deducted: 6  
[2026-10-23 07:30:17] testing.INFO: New stock: 10  
[2026-10-23 07:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0e907e85"} 
[2026-10-23 07:30:17] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-23 07:30:17] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 07:30:17] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-23 07:30:17"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 07:30:17] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-23 07:30:18] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-22"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 07:30:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0ea636f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0ea68fef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:18] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-23 07:30:18] testing.INFO: Old stock: 2  
[2026-10-23 07:30:18] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:18] testing.INFO: New stock: 1  
[2026-10-23 07:30:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ea68fef"} 
[2026-10-23 07:30:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:18] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-23 07:30:18] testing.INFO: Old stock: 35  
[2026-10-23 07:30:18] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:18] testing.INFO: New stock: 33  
[2026-10-23 07:30:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-23 07:30:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0eae8373","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:18] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 07:30:18] testing.INFO: Old stock: 13  
[2026-10-23 07:30:18] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:30:18] testing.INFO: New stock: 8  
[2026-10-23 07:30:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0eae8373"} 
[2026-10-23 07:30:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0eaef971","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:18] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 07:30:18] testing.INFO: Old stock: 8  
[2026-10-23 07:30:18] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:18] testing.INFO: New stock: 4  
[2026-10-23 07:30:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0eaef971"} 
[2026-10-23 07:30:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adaf0eb20b2b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:19] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-23 07:30:19] testing.INFO: Old stock: 8  
[2026-10-23 07:30:19] testing.INFO: Quantity deducted: 6  
[2026-10-23 07:30:19] testing.INFO: New stock: 2  
[2026-10-23 07:30:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0eb20b2b"} 
[2026-10-23 07:30:19] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 07:30:19] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 07:30:19] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-23 07:30:19"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 07:30:19] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-23 07:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adaf0ed3ba86","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:21] testing.INFO: Old stock: 100  
[2026-10-23 07:30:21] testing.INFO: Quantity deducted: 1  
[2026-10-23 07:30:21] testing.INFO: New stock: 99  
[2026-10-23 07:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ed3ba86"} 
[2026-10-23 07:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0ed425e0","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:21] testing.INFO: Old stock: 99  
[2026-10-23 07:30:21] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:21] testing.INFO: New stock: 97  
[2026-10-23 07:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ed425e0"} 
[2026-10-23 07:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0ed4704e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 07:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0ed8fa2a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:21] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:21] testing.INFO: Old stock: 50  
[2026-10-23 07:30:21] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:21] testing.INFO: New stock: 48  
[2026-10-23 07:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ed8fa2a"} 
[2026-10-23 07:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adaf0ed9b191","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:21] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:21] testing.INFO: Old stock: 48  
[2026-10-23 07:30:21] testing.INFO: Quantity deducted: 3  
[2026-10-23 07:30:21] testing.INFO: New stock: 45  
[2026-10-23 07:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ed9b191"} 
[2026-10-23 07:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adaf0ede333b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:21] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:21] testing.INFO: Old stock: 20  
[2026-10-23 07:30:21] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:21] testing.INFO: New stock: 18  
[2026-10-23 07:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ede333b"} 
[2026-10-23 07:30:22] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-23 07:30:22"}  
[2026-10-23 07:30:22] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-23 07:30:22] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-23 07:30:22] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-23 07:30:22] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-23 07:30:22] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-23 07:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0ee897cb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 07:30:22] testing.INFO: Old stock: 70  
[2026-10-23 07:30:22] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:30:22] testing.INFO: New stock: 65  
[2026-10-23 07:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ee897cb"} 
[2026-10-23 07:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-23 07:30:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 07:30:22] testing.INFO: Old stock: 62  
[2026-10-23 07:30:22] testing.INFO: Quantity deducted: 2  
[2026-10-23 07:30:22] testing.INFO: New stock: 60  
[2026-10-23 07:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-23 07:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0eeac86f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:22] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 07:30:22] testing.INFO: Old stock: 59  
[2026-10-23 07:30:22] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:22] testing.INFO: New stock: 55  
[2026-10-23 07:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0eeac86f"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0ef02606","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:23] testing.INFO: Old stock: 10  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:23] testing.INFO: New stock: 6  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef02606"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0ef191f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:23] testing.INFO: Old stock: 10  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:30:23] testing.INFO: New stock: 5  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef191f3"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0ef30b13","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 07:30:23] testing.INFO: Old stock: 10  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:23] testing.INFO: New stock: 6  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef30b13"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0ef51184","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 07:30:23] testing.INFO: Old stock: 5  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:23] testing.INFO: New stock: 1  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef51184"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0ef69071","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-23 07:30:23] testing.INFO: Old stock: 10  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:30:23] testing.INFO: New stock: 5  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef69071"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0ef8b237","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-23 07:30:23] testing.INFO: Old stock: 12  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:30:23] testing.INFO: New stock: 7  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef8b237"} 
[2026-10-23 07:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adaf0ef9eab0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:23] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-23 07:30:23] testing.INFO: Old stock: 12  
[2026-10-23 07:30:23] testing.INFO: Quantity deducted: 5  
[2026-10-23 07:30:23] testing.INFO: New stock: 7  
[2026-10-23 07:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0ef9eab0"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0fb20958","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:35] testing.INFO: Old stock: 100  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:35] testing.INFO: New stock: 96  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb20958"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0fb30fc4","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 07:30:35] testing.INFO: Old stock: 96  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:35] testing.INFO: New stock: 65  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb30fc4"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0fb4f59a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:35] testing.INFO: Old stock: 100  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:35] testing.INFO: New stock: 96  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb4f59a"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0fb5636f","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 07:30:35] testing.INFO: Old stock: 96  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:35] testing.INFO: New stock: 65  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb5636f"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0fb6adaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:35] testing.INFO: Old stock: 100  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:35] testing.INFO: New stock: 96  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb6adaa"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0fb71c9c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 07:30:35] testing.INFO: Old stock: 96  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:35] testing.INFO: New stock: 65  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb71c9c"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adaf0fb8e54e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:35] testing.INFO: Old stock: 100  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 07:30:35] testing.INFO: New stock: 96  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb8e54e"} 
[2026-10-23 07:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adaf0fb9456d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 07:30:35] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 07:30:35] testing.INFO: Old stock: 96  
[2026-10-23 07:30:35] testing.INFO: Quantity deducted: 31  
[2026-10-23 07:30:35] testing.INFO: New stock: 65  
[2026-10-23 07:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adaf0fb9456d"} 
[2026-10-23 09:52:05] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792617777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:52:05] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:52:05] testing.INFO: Old stock: 50  
[2026-10-23 09:52:05] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:52:05] testing.INFO: New stock: 49  
[2026-10-23 09:52:05] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:52:05] testing.INFO: Old stock: 50  
[2026-10-23 09:52:05] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:52:05] testing.INFO: New stock: 49  
[2026-10-23 09:52:05] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:52:05] testing.INFO: Old stock: 50  
[2026-10-23 09:52:05] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:52:05] testing.INFO: New stock: 49  
[2026-10-23 09:52:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792617777777777"} 
[2026-10-23 09:52:05] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792627777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:52:05] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792637777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:52:05] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:52:05] testing.INFO: Old stock: 48  
[2026-10-23 09:52:05] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:52:05] testing.INFO: New stock: 47  
[2026-10-23 09:52:05] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:52:05] testing.INFO: Old stock: 48  
[2026-10-23 09:52:05] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:52:05] testing.INFO: New stock: 47  
[2026-10-23 09:52:05] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:52:05] testing.INFO: Old stock: 48  
[2026-10-23 09:52:05] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:52:05] testing.INFO: New stock: 47  
[2026-10-23 09:52:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792637777777777"} 
[2026-10-23 09:52:05] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792647777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:53:03] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792617777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:53:03] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:53:03] testing.INFO: Old stock: 50  
[2026-10-23 09:53:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:03] testing.INFO: New stock: 49  
[2026-10-23 09:53:03] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:53:03] testing.INFO: Old stock: 50  
[2026-10-23 09:53:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:03] testing.INFO: New stock: 49  
[2026-10-23 09:53:03] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:53:03] testing.INFO: Old stock: 50  
[2026-10-23 09:53:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:03] testing.INFO: New stock: 49  
[2026-10-23 09:53:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792617777777777"} 
[2026-10-23 09:53:03] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792627777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:53:03] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792637777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:53:03] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:53:03] testing.INFO: Old stock: 48  
[2026-10-23 09:53:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:03] testing.INFO: New stock: 47  
[2026-10-23 09:53:03] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:53:03] testing.INFO: Old stock: 48  
[2026-10-23 09:53:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:03] testing.INFO: New stock: 47  
[2026-10-23 09:53:03] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:53:03] testing.INFO: Old stock: 48  
[2026-10-23 09:53:03] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:03] testing.INFO: New stock: 47  
[2026-10-23 09:53:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792637777777777"} 
[2026-10-23 09:53:03] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792647777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb127f98050","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:35] testing.INFO: Old stock: 100  
[2026-10-23 09:53:35] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:35] testing.INFO: New stock: 96  
[2026-10-23 09:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb127f98050"} 
[2026-10-23 09:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb127fbe660","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 09:53:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:35] testing.INFO: Old stock: 96  
[2026-10-23 09:53:35] testing.INFO: Quantity deducted: 31  
[2026-10-23 09:53:35] testing.INFO: New stock: 65  
[2026-10-23 09:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb127fbe660"} 
[2026-10-23 09:53:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12806cedb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:36] testing.INFO: Old stock: 100  
[2026-10-23 09:53:36] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:36] testing.INFO: New stock: 96  
[2026-10-23 09:53:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12806cedb"} 
[2026-10-23 09:53:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb1280919fa","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 09:53:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:36] testing.INFO: Old stock: 96  
[2026-10-23 09:53:36] testing.INFO: Quantity deducted: 31  
[2026-10-23 09:53:36] testing.INFO: New stock: 65  
[2026-10-23 09:53:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1280919fa"} 
[2026-10-23 09:53:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12810be32","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:37] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:53:37] testing.INFO: Old stock: 100  
[2026-10-23 09:53:37] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:37] testing.INFO: New stock: 96  
[2026-10-23 09:53:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12810be32"} 
[2026-10-23 09:53:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb12812fb14","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 09:53:37] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:53:37] testing.INFO: Old stock: 96  
[2026-10-23 09:53:37] testing.INFO: Quantity deducted: 31  
[2026-10-23 09:53:37] testing.INFO: New stock: 65  
[2026-10-23 09:53:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12812fb14"} 
[2026-10-23 09:53:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1281dec9e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:53:38] testing.INFO: Old stock: 100  
[2026-10-23 09:53:38] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:38] testing.INFO: New stock: 96  
[2026-10-23 09:53:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1281dec9e"} 
[2026-10-23 09:53:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb1282116dc","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 09:53:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:53:38] testing.INFO: Old stock: 96  
[2026-10-23 09:53:38] testing.INFO: Quantity deducted: 31  
[2026-10-23 09:53:38] testing.INFO: New stock: 65  
[2026-10-23 09:53:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1282116dc"} 
[2026-10-23 09:53:39] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-23 09:53:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb128789235","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:43] testing.INFO: Old stock: 200  
[2026-10-23 09:53:43] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:43] testing.INFO: New stock: 196  
[2026-10-23 09:53:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb128789235"} 
[2026-10-23 09:53:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1287b02f9","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 09:53:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:43] testing.INFO: Old stock: 196  
[2026-10-23 09:53:43] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:43] testing.INFO: New stock: 194  
[2026-10-23 09:53:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1287b02f9"} 
[2026-10-23 09:53:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb1287ca7ee","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 09:53:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb1287eb904","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 09:53:44] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:44] testing.INFO: Old stock: 191  
[2026-10-23 09:53:44] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:44] testing.INFO: New stock: 190  
[2026-10-23 09:53:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1287eb904"} 
[2026-10-23 09:53:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1288e3759","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:45] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:45] testing.INFO: Old stock: 200  
[2026-10-23 09:53:45] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:45] testing.INFO: New stock: 196  
[2026-10-23 09:53:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1288e3759"} 
[2026-10-23 09:53:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1289163ee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:45] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:45] testing.INFO: Old stock: 196  
[2026-10-23 09:53:45] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:45] testing.INFO: New stock: 194  
[2026-10-23 09:53:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1289163ee"} 
[2026-10-23 09:53:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1289b13ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:45] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:53:45] testing.INFO: Old stock: 200  
[2026-10-23 09:53:45] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:45] testing.INFO: New stock: 196  
[2026-10-23 09:53:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1289b13ff"} 
[2026-10-23 09:53:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb1289db7a5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:45] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:53:45] testing.INFO: Old stock: 196  
[2026-10-23 09:53:45] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:45] testing.INFO: New stock: 195  
[2026-10-23 09:53:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1289db7a5"} 
[2026-10-23 09:53:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb128a6dd7e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:46] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:53:46] testing.INFO: Old stock: 200  
[2026-10-23 09:53:46] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:53:46] testing.INFO: New stock: 196  
[2026-10-23 09:53:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb128a6dd7e"} 
[2026-10-23 09:53:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T09:23:46+02:00"}} 
[2026-10-23 09:53:46] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:53:46] testing.INFO: Old stock: 196  
[2026-10-23 09:53:46] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:46] testing.INFO: New stock: 195  
[2026-10-23 09:53:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-23 09:53:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb128c21276","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:48] testing.INFO: Old stock: 10  
[2026-10-23 09:53:48] testing.INFO: Quantity deducted: 3  
[2026-10-23 09:53:48] testing.INFO: New stock: 7  
[2026-10-23 09:53:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb128c21276"} 
[2026-10-23 09:53:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adb128c8b8ab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:48] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:48] testing.INFO: Old stock: 10  
[2026-10-23 09:53:48] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:48] testing.INFO: New stock: 8  
[2026-10-23 09:53:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb128c8b8ab"} 
[2026-10-23 09:53:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb128d00ea5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:49] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb128d5e69a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adb128daf959","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb128e0cdc7","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 09:53:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb128e58915","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 09:53:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb128f2f728","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:51] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:51] testing.INFO: Old stock: 10  
[2026-10-23 09:53:51] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:51] testing.INFO: New stock: 8  
[2026-10-23 09:53:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb128f2f728"} 
[2026-10-23 09:53:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb128fa729c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:51] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:51] testing.INFO: Old stock: 10  
[2026-10-23 09:53:51] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:51] testing.INFO: New stock: 8  
[2026-10-23 09:53:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb128fa729c"} 
[2026-10-23 09:53:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb129030aee","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:52] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:53:52] testing.INFO: Old stock: 10  
[2026-10-23 09:53:52] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:52] testing.INFO: New stock: 8  
[2026-10-23 09:53:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb129030aee"} 
[2026-10-23 09:53:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1290aab18","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:53:52] testing.INFO: Old stock: 3  
[2026-10-23 09:53:52] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:52] testing.INFO: New stock: 1  
[2026-10-23 09:53:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1290aab18"} 
[2026-10-23 09:53:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1291b3754","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:53] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-23 09:53:53] testing.INFO: Old stock: 10  
[2026-10-23 09:53:53] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:53] testing.INFO: New stock: 8  
[2026-10-23 09:53:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1291b3754"} 
[2026-10-23 09:53:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:53:54] testing.INFO: Old stock: 10  
[2026-10-23 09:53:54] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:53:54] testing.INFO: New stock: 8  
[2026-10-23 09:53:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 09:53:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:54] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:53:54] testing.INFO: Old stock: 10  
[2026-10-23 09:53:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:54] testing.INFO: New stock: 9  
[2026-10-23 09:53:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 09:53:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:53:00+02:00"}} 
[2026-10-23 09:53:55] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:53:55] testing.INFO: Old stock: 10  
[2026-10-23 09:53:55] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:55] testing.INFO: New stock: 9  
[2026-10-23 09:53:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 09:53:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T09:53:55+02:00"}} 
[2026-10-23 09:53:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:53:55] testing.INFO: Old stock: 10  
[2026-10-23 09:53:55] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:55] testing.INFO: New stock: 9  
[2026-10-23 09:53:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 09:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T09:53:56+02:00"}} 
[2026-10-23 09:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T09:53:56+02:00"}} 
[2026-10-23 09:53:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T09:53:56+02:00"}} 
[2026-10-23 09:53:56] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 09:53:56] testing.INFO: Old stock: 5  
[2026-10-23 09:53:56] testing.INFO: Quantity deducted: 3  
[2026-10-23 09:53:56] testing.INFO: New stock: 2  
[2026-10-23 09:53:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 09:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:53:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T09:53:57+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-23 09:53:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T06:53:58+02:00"}} 
[2026-10-23 09:53:58] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-23 09:53:58] testing.INFO: Old stock: 10  
[2026-10-23 09:53:58] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:53:58] testing.INFO: New stock: 9  
[2026-10-23 09:53:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 09:54:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adb129d24f1f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:05] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 09:54:05] testing.INFO: Old stock: 16  
[2026-10-23 09:54:05] testing.INFO: Quantity deducted: 6  
[2026-10-23 09:54:05] testing.INFO: New stock: 10  
[2026-10-23 09:54:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb129d24f1f"} 
[2026-10-23 09:54:08] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-23 09:54:08] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 09:54:08] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-23 09:54:08"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 09:54:08] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-23 09:54:11] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-22"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 09:54:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb12a4d86c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb12a50e133","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:13] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-23 09:54:13] testing.INFO: Old stock: 2  
[2026-10-23 09:54:13] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:54:13] testing.INFO: New stock: 1  
[2026-10-23 09:54:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12a50e133"} 
[2026-10-23 09:54:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:15] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-23 09:54:15] testing.INFO: Old stock: 35  
[2026-10-23 09:54:15] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:54:15] testing.INFO: New stock: 33  
[2026-10-23 09:54:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-23 09:54:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb12a8060fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:16] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 09:54:16] testing.INFO: Old stock: 13  
[2026-10-23 09:54:16] testing.INFO: Quantity deducted: 5  
[2026-10-23 09:54:16] testing.INFO: New stock: 8  
[2026-10-23 09:54:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12a8060fa"} 
[2026-10-23 09:54:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12a82f040","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:16] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 09:54:16] testing.INFO: Old stock: 8  
[2026-10-23 09:54:16] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:54:16] testing.INFO: New stock: 4  
[2026-10-23 09:54:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12a82f040"} 
[2026-10-23 09:54:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adb12a90c6e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:17] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-23 09:54:17] testing.INFO: Old stock: 8  
[2026-10-23 09:54:17] testing.INFO: Quantity deducted: 6  
[2026-10-23 09:54:17] testing.INFO: New stock: 2  
[2026-10-23 09:54:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12a90c6e9"} 
[2026-10-23 09:54:18] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 09:54:18] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 09:54:18] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-23 09:54:18"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 09:54:18] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-23 09:54:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb12b4e4c6a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:29] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:54:29] testing.INFO: Old stock: 100  
[2026-10-23 09:54:29] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:54:29] testing.INFO: New stock: 99  
[2026-10-23 09:54:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12b4e4c6a"} 
[2026-10-23 09:54:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb12b517515","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 09:54:29] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 09:54:29] testing.INFO: Old stock: 99  
[2026-10-23 09:54:29] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:54:29] testing.INFO: New stock: 97  
[2026-10-23 09:54:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12b517515"} 
[2026-10-23 09:54:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb12b5310da","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 09:54:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb12b6f05e8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:54:31] testing.INFO: Old stock: 50  
[2026-10-23 09:54:31] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:54:31] testing.INFO: New stock: 48  
[2026-10-23 09:54:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12b6f05e8"} 
[2026-10-23 09:54:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb12b742e8c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:31] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 09:54:31] testing.INFO: Old stock: 48  
[2026-10-23 09:54:31] testing.INFO: Quantity deducted: 3  
[2026-10-23 09:54:31] testing.INFO: New stock: 45  
[2026-10-23 09:54:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12b742e8c"} 
[2026-10-23 09:54:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb12b90eec7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:33] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:54:33] testing.INFO: Old stock: 20  
[2026-10-23 09:54:33] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:54:33] testing.INFO: New stock: 18  
[2026-10-23 09:54:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12b90eec7"} 
[2026-10-23 09:54:35] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-23 09:54:35"}  
[2026-10-23 09:54:35] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-23 09:54:35] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-23 09:54:35] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-23 09:54:35] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-23 09:54:35] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-23 09:54:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb12bc08b64","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:36] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 09:54:36] testing.INFO: Old stock: 70  
[2026-10-23 09:54:36] testing.INFO: Quantity deducted: 5  
[2026-10-23 09:54:36] testing.INFO: New stock: 65  
[2026-10-23 09:54:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12bc08b64"} 
[2026-10-23 09:54:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-23 09:54:36] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 09:54:36] testing.INFO: Old stock: 62  
[2026-10-23 09:54:36] testing.INFO: Quantity deducted: 2  
[2026-10-23 09:54:36] testing.INFO: New stock: 60  
[2026-10-23 09:54:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-23 09:54:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12bcd4c87","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:36] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 09:54:36] testing.INFO: Old stock: 59  
[2026-10-23 09:54:36] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:54:36] testing.INFO: New stock: 55  
[2026-10-23 09:54:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12bcd4c87"} 
[2026-10-23 09:54:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12beae978","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 09:54:38] testing.INFO: Old stock: 10  
[2026-10-23 09:54:38] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:54:38] testing.INFO: New stock: 6  
[2026-10-23 09:54:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12beae978"} 
[2026-10-23 09:54:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb12bf3f45f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 09:54:39] testing.INFO: Old stock: 10  
[2026-10-23 09:54:39] testing.INFO: Quantity deducted: 5  
[2026-10-23 09:54:39] testing.INFO: New stock: 5  
[2026-10-23 09:54:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12bf3f45f"} 
[2026-10-23 09:54:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12bfc8502","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:39] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 09:54:39] testing.INFO: Old stock: 10  
[2026-10-23 09:54:39] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:54:39] testing.INFO: New stock: 6  
[2026-10-23 09:54:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12bfc8502"} 
[2026-10-23 09:54:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb12c0971d3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:40] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 09:54:40] testing.INFO: Old stock: 5  
[2026-10-23 09:54:40] testing.INFO: Quantity deducted: 4  
[2026-10-23 09:54:40] testing.INFO: New stock: 1  
[2026-10-23 09:54:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12c0971d3"} 
[2026-10-23 09:54:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb12c129596","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:41] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-23 09:54:41] testing.INFO: Old stock: 10  
[2026-10-23 09:54:41] testing.INFO: Quantity deducted: 5  
[2026-10-23 09:54:41] testing.INFO: New stock: 5  
[2026-10-23 09:54:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12c129596"} 
[2026-10-23 09:54:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb12c1e6e51","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:42] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-23 09:54:42] testing.INFO: Old stock: 12  
[2026-10-23 09:54:42] testing.INFO: Quantity deducted: 5  
[2026-10-23 09:54:42] testing.INFO: New stock: 7  
[2026-10-23 09:54:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12c1e6e51"} 
[2026-10-23 09:54:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb12c2656cf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 09:54:42] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-23 09:54:42] testing.INFO: Old stock: 12  
[2026-10-23 09:54:42] testing.INFO: Quantity deducted: 5  
[2026-10-23 09:54:42] testing.INFO: New stock: 7  
[2026-10-23 09:54:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb12c2656cf"} 
[2026-10-23 09:58:57] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792617777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:58:57] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:58:57] testing.INFO: Old stock: 50  
[2026-10-23 09:58:57] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:58:57] testing.INFO: New stock: 49  
[2026-10-23 09:58:57] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:58:57] testing.INFO: Old stock: 50  
[2026-10-23 09:58:57] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:58:57] testing.INFO: New stock: 49  
[2026-10-23 09:58:57] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:58:57] testing.INFO: Old stock: 50  
[2026-10-23 09:58:57] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:58:57] testing.INFO: New stock: 49  
[2026-10-23 09:58:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792617777777777"} 
[2026-10-23 09:58:57] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792627777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:58:58] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792637777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:58:58] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:58:58] testing.INFO: Old stock: 48  
[2026-10-23 09:58:58] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:58:58] testing.INFO: New stock: 47  
[2026-10-23 09:58:58] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:58:58] testing.INFO: Old stock: 48  
[2026-10-23 09:58:58] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:58:58] testing.INFO: New stock: 47  
[2026-10-23 09:58:58] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:58:58] testing.INFO: Old stock: 48  
[2026-10-23 09:58:58] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:58:58] testing.INFO: New stock: 47  
[2026-10-23 09:58:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792637777777777"} 
[2026-10-23 09:58:58] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792647777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:31] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792617777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:31] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:59:31] testing.INFO: Old stock: 50  
[2026-10-23 09:59:31] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:31] testing.INFO: New stock: 49  
[2026-10-23 09:59:31] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:59:31] testing.INFO: Old stock: 50  
[2026-10-23 09:59:31] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:31] testing.INFO: New stock: 49  
[2026-10-23 09:59:31] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:59:31] testing.INFO: Old stock: 50  
[2026-10-23 09:59:31] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:31] testing.INFO: New stock: 49  
[2026-10-23 09:59:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792617777777777"} 
[2026-10-23 09:59:31] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792627777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:31] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792637777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:31] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:59:31] testing.INFO: Old stock: 48  
[2026-10-23 09:59:31] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:31] testing.INFO: New stock: 47  
[2026-10-23 09:59:31] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:59:31] testing.INFO: Old stock: 48  
[2026-10-23 09:59:31] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:31] testing.INFO: New stock: 47  
[2026-10-23 09:59:31] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:59:31] testing.INFO: Old stock: 48  
[2026-10-23 09:59:31] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:31] testing.INFO: New stock: 47  
[2026-10-23 09:59:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792637777777777"} 
[2026-10-23 09:59:31] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792647777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:54] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792617777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:54] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:59:54] testing.INFO: Old stock: 50  
[2026-10-23 09:59:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:54] testing.INFO: New stock: 49  
[2026-10-23 09:59:54] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:59:54] testing.INFO: Old stock: 50  
[2026-10-23 09:59:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:54] testing.INFO: New stock: 49  
[2026-10-23 09:59:54] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:59:54] testing.INFO: Old stock: 50  
[2026-10-23 09:59:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:54] testing.INFO: New stock: 49  
[2026-10-23 09:59:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792617777777777"} 
[2026-10-23 09:59:54] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792627777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:54] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792637777777777","payment_method":"cash","is_split_payment":false,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 09:59:54] testing.INFO: Stock deduction for product: Amoxicillin 500mg Capsules x100  
[2026-10-23 09:59:54] testing.INFO: Old stock: 48  
[2026-10-23 09:59:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:54] testing.INFO: New stock: 47  
[2026-10-23 09:59:54] testing.INFO: Stock deduction for product: Paracetamol Syrup 120mg/5ml 100ml  
[2026-10-23 09:59:54] testing.INFO: Old stock: 48  
[2026-10-23 09:59:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:54] testing.INFO: New stock: 47  
[2026-10-23 09:59:54] testing.INFO: Stock deduction for product: Oral Rehydration Salts Sachets Orange  
[2026-10-23 09:59:54] testing.INFO: Old stock: 48  
[2026-10-23 09:59:54] testing.INFO: Quantity deducted: 1  
[2026-10-23 09:59:54] testing.INFO: New stock: 47  
[2026-10-23 09:59:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792637777777777"} 
[2026-10-23 09:59:54] testing.INFO: Finalize sale attempt {"cart_items":3,"request_data":{"items":[{"product_id":1,"quantity":1},{"product_id":2,"quantity":1},{"product_id":3,"quantity":1}],"invoice_no":"INV-1792647777777777","payment_method":"split","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"airtel_money","amount":2000}],"payment_status":"paid","customer_name":"Walk-In Customer"}} 
[2026-10-23 10:00:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb14137194d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:19] testing.INFO: Old stock: 100  
[2026-10-23 10:00:19] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:19] testing.INFO: New stock: 96  
[2026-10-23 10:00:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14137194d"} 
[2026-10-23 10:00:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb14137d37e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:19] testing.INFO: Old stock: 96  
[2026-10-23 10:00:19] testing.INFO: Quantity deducted: 31  
[2026-10-23 10:00:19] testing.INFO: New stock: 65  
[2026-10-23 10:00:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14137d37e"} 
[2026-10-23 10:00:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1413ad229","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:19] testing.INFO: Old stock: 100  
[2026-10-23 10:00:19] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:19] testing.INFO: New stock: 96  
[2026-10-23 10:00:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1413ad229"} 
[2026-10-23 10:00:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb1413b6a12","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:19] testing.INFO: Old stock: 96  
[2026-10-23 10:00:19] testing.INFO: Quantity deducted: 31  
[2026-10-23 10:00:19] testing.INFO: New stock: 65  
[2026-10-23 10:00:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1413b6a12"} 
[2026-10-23 10:00:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1413eff2c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:20] testing.INFO: Old stock: 100  
[2026-10-23 10:00:20] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:20] testing.INFO: New stock: 96  
[2026-10-23 10:00:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1413eff2c"} 
[2026-10-23 10:00:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb141403ef6","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:20] testing.INFO: Old stock: 96  
[2026-10-23 10:00:20] testing.INFO: Quantity deducted: 31  
[2026-10-23 10:00:20] testing.INFO: New stock: 65  
[2026-10-23 10:00:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141403ef6"} 
[2026-10-23 10:00:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb14143908d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:20] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:20] testing.INFO: Old stock: 100  
[2026-10-23 10:00:20] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:20] testing.INFO: New stock: 96  
[2026-10-23 10:00:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14143908d"} 
[2026-10-23 10:00:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adb1414410e0","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:20] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:20] testing.INFO: Old stock: 96  
[2026-10-23 10:00:20] testing.INFO: Quantity deducted: 31  
[2026-10-23 10:00:20] testing.INFO: New stock: 65  
[2026-10-23 10:00:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1414410e0"} 
[2026-10-23 10:00:20] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-23 10:00:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1415a309f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:21] testing.INFO: Old stock: 200  
[2026-10-23 10:00:21] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:21] testing.INFO: New stock: 196  
[2026-10-23 10:00:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1415a309f"} 
[2026-10-23 10:00:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1415ac7da","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:21] testing.INFO: Old stock: 196  
[2026-10-23 10:00:21] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:21] testing.INFO: New stock: 194  
[2026-10-23 10:00:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1415ac7da"} 
[2026-10-23 10:00:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb1415b7000","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 10:00:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb1415be199","payment_method":"card","payment_status":"paid"}} 
[2026-10-23 10:00:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:21] testing.INFO: Old stock: 191  
[2026-10-23 10:00:21] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:21] testing.INFO: New stock: 190  
[2026-10-23 10:00:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1415be199"} 
[2026-10-23 10:00:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1416094a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:22] testing.INFO: Old stock: 200  
[2026-10-23 10:00:22] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:22] testing.INFO: New stock: 196  
[2026-10-23 10:00:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1416094a6"} 
[2026-10-23 10:00:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1416127af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:22] testing.INFO: Old stock: 196  
[2026-10-23 10:00:22] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:22] testing.INFO: New stock: 194  
[2026-10-23 10:00:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1416127af"} 
[2026-10-23 10:00:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb14163b4b4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:22] testing.INFO: Old stock: 200  
[2026-10-23 10:00:22] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:22] testing.INFO: New stock: 196  
[2026-10-23 10:00:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14163b4b4"} 
[2026-10-23 10:00:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb14164f20f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:22] testing.INFO: Old stock: 196  
[2026-10-23 10:00:22] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:22] testing.INFO: New stock: 195  
[2026-10-23 10:00:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14164f20f"} 
[2026-10-23 10:00:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb141677424","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:22] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:22] testing.INFO: Old stock: 200  
[2026-10-23 10:00:22] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:22] testing.INFO: New stock: 196  
[2026-10-23 10:00:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141677424"} 
[2026-10-23 10:00:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T09:30:22+02:00"}} 
[2026-10-23 10:00:22] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:22] testing.INFO: Old stock: 196  
[2026-10-23 10:00:22] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:22] testing.INFO: New stock: 195  
[2026-10-23 10:00:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb1417063de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:23] testing.INFO: Old stock: 10  
[2026-10-23 10:00:23] testing.INFO: Quantity deducted: 3  
[2026-10-23 10:00:23] testing.INFO: New stock: 7  
[2026-10-23 10:00:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1417063de"} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adb141729624","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:23] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:23] testing.INFO: Old stock: 10  
[2026-10-23 10:00:23] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:23] testing.INFO: New stock: 8  
[2026-10-23 10:00:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141729624"} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb14174d970","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb14176ccc6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adb14177db03","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb14178fbd9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1417a0b02","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-23 10:00:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1417d40c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:23] testing.INFO: Old stock: 10  
[2026-10-23 10:00:23] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:23] testing.INFO: New stock: 8  
[2026-10-23 10:00:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1417d40c4"} 
[2026-10-23 10:00:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb141809064","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:24] testing.INFO: Old stock: 10  
[2026-10-23 10:00:24] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:24] testing.INFO: New stock: 8  
[2026-10-23 10:00:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141809064"} 
[2026-10-23 10:00:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb14183013a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:24] testing.INFO: Old stock: 10  
[2026-10-23 10:00:24] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:24] testing.INFO: New stock: 8  
[2026-10-23 10:00:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14183013a"} 
[2026-10-23 10:00:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb14184f623","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:24] testing.INFO: Old stock: 3  
[2026-10-23 10:00:24] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:24] testing.INFO: New stock: 1  
[2026-10-23 10:00:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14184f623"} 
[2026-10-23 10:00:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1418989ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:24] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-23 10:00:24] testing.INFO: Old stock: 10  
[2026-10-23 10:00:24] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:24] testing.INFO: New stock: 8  
[2026-10-23 10:00:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1418989ef"} 
[2026-10-23 10:00:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:24] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:24] testing.INFO: Old stock: 10  
[2026-10-23 10:00:24] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:24] testing.INFO: New stock: 8  
[2026-10-23 10:00:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 10:00:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:24] testing.INFO: Old stock: 10  
[2026-10-23 10:00:24] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:24] testing.INFO: New stock: 9  
[2026-10-23 10:00:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T08:00:00+02:00"}} 
[2026-10-23 10:00:25] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:25] testing.INFO: Old stock: 10  
[2026-10-23 10:00:25] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:25] testing.INFO: New stock: 9  
[2026-10-23 10:00:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T10:00:25+02:00"}} 
[2026-10-23 10:00:25] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:25] testing.INFO: Old stock: 10  
[2026-10-23 10:00:25] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:25] testing.INFO: New stock: 9  
[2026-10-23 10:00:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T10:00:25+02:00"}} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T10:00:25+02:00"}} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T10:00:25+02:00"}} 
[2026-10-23 10:00:25] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 10:00:25] testing.INFO: Old stock: 5  
[2026-10-23 10:00:25] testing.INFO: Quantity deducted: 3  
[2026-10-23 10:00:25] testing.INFO: New stock: 2  
[2026-10-23 10:00:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T10:00:25+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-23 10:00:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-23T07:00:25+02:00"}} 
[2026-10-23 10:00:25] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-23 10:00:25] testing.INFO: Old stock: 10  
[2026-10-23 10:00:25] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:25] testing.INFO: New stock: 9  
[2026-10-23 10:00:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-23 10:00:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adb141b9cdbf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:27] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 10:00:27] testing.INFO: Old stock: 16  
[2026-10-23 10:00:27] testing.INFO: Quantity deducted: 6  
[2026-10-23 10:00:27] testing.INFO: New stock: 10  
[2026-10-23 10:00:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141b9cdbf"} 
[2026-10-23 10:00:28] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-23 10:00:28] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 10:00:28] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-23 10:00:28"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 10:00:28] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-23 10:00:29] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-22"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 10:00:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb141da7e2c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb141db312c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:29] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-23 10:00:29] testing.INFO: Old stock: 2  
[2026-10-23 10:00:29] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:29] testing.INFO: New stock: 1  
[2026-10-23 10:00:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141db312c"} 
[2026-10-23 10:00:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:30] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-23 10:00:30] testing.INFO: Old stock: 35  
[2026-10-23 10:00:30] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:30] testing.INFO: New stock: 33  
[2026-10-23 10:00:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-23 10:00:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb141e85ecd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:30] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 10:00:30] testing.INFO: Old stock: 13  
[2026-10-23 10:00:30] testing.INFO: Quantity deducted: 5  
[2026-10-23 10:00:30] testing.INFO: New stock: 8  
[2026-10-23 10:00:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141e85ecd"} 
[2026-10-23 10:00:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb141e9793d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:30] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-23 10:00:30] testing.INFO: Old stock: 8  
[2026-10-23 10:00:30] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:30] testing.INFO: New stock: 4  
[2026-10-23 10:00:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141e9793d"} 
[2026-10-23 10:00:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adb141ec6613","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:30] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-23 10:00:30] testing.INFO: Old stock: 8  
[2026-10-23 10:00:30] testing.INFO: Quantity deducted: 6  
[2026-10-23 10:00:30] testing.INFO: New stock: 2  
[2026-10-23 10:00:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb141ec6613"} 
[2026-10-23 10:00:31] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-23 10:00:31] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-23 10:00:31] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-23 10:00:31"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-23 10:00:31] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-23 10:00:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:33] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:33] testing.INFO: Old stock: 10  
[2026-10-23 10:00:33] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:33] testing.INFO: New stock: 9  
[2026-10-23 10:00:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-23 10:00:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:33] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:33] testing.INFO: Old stock: 10  
[2026-10-23 10:00:33] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:33] testing.INFO: New stock: 9  
[2026-10-23 10:00:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:34] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:34] testing.INFO: Old stock: 10  
[2026-10-23 10:00:34] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:34] testing.INFO: New stock: 9  
[2026-10-23 10:00:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:34] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:34] testing.INFO: Old stock: 10  
[2026-10-23 10:00:34] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:34] testing.INFO: New stock: 9  
[2026-10-23 10:00:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adb14225a7e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:34] testing.INFO: Old stock: 100  
[2026-10-23 10:00:34] testing.INFO: Quantity deducted: 1  
[2026-10-23 10:00:34] testing.INFO: New stock: 99  
[2026-10-23 10:00:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14225a7e9"} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb142262e4c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-23 10:00:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-23 10:00:34] testing.INFO: Old stock: 99  
[2026-10-23 10:00:34] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:34] testing.INFO: New stock: 97  
[2026-10-23 10:00:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb142262e4c"} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb1422690ff","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb1422c9841","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:34] testing.INFO: Old stock: 50  
[2026-10-23 10:00:34] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:34] testing.INFO: New stock: 48  
[2026-10-23 10:00:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1422c9841"} 
[2026-10-23 10:00:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adb1422da551","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-23 10:00:34] testing.INFO: Old stock: 48  
[2026-10-23 10:00:34] testing.INFO: Quantity deducted: 3  
[2026-10-23 10:00:34] testing.INFO: New stock: 45  
[2026-10-23 10:00:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1422da551"} 
[2026-10-23 10:00:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adb142346951","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:35] testing.INFO: Old stock: 20  
[2026-10-23 10:00:35] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:35] testing.INFO: New stock: 18  
[2026-10-23 10:00:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb142346951"} 
[2026-10-23 10:00:35] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-23 10:00:35"}  
[2026-10-23 10:00:35] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-23 10:00:35] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-23 10:00:35] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-23 10:00:35] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-23 10:00:35] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-23 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb14241608d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:36] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 10:00:36] testing.INFO: Old stock: 70  
[2026-10-23 10:00:36] testing.INFO: Quantity deducted: 5  
[2026-10-23 10:00:36] testing.INFO: New stock: 65  
[2026-10-23 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb14241608d"} 
[2026-10-23 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-23 10:00:36] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 10:00:36] testing.INFO: Old stock: 62  
[2026-10-23 10:00:36] testing.INFO: Quantity deducted: 2  
[2026-10-23 10:00:36] testing.INFO: New stock: 60  
[2026-10-23 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-23 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1424463af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:36] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-23 10:00:36] testing.INFO: Old stock: 59  
[2026-10-23 10:00:36] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:36] testing.INFO: New stock: 55  
[2026-10-23 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1424463af"} 
[2026-10-23 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1424c786a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:36] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-23 10:00:36] testing.INFO: Old stock: 10  
[2026-10-23 10:00:36] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:36] testing.INFO: New stock: 6  
[2026-10-23 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1424c786a"} 
[2026-10-23 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb1424e5eb3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:36] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-23 10:00:36] testing.INFO: Old stock: 10  
[2026-10-23 10:00:36] testing.INFO: Quantity deducted: 5  
[2026-10-23 10:00:36] testing.INFO: New stock: 5  
[2026-10-23 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1424e5eb3"} 
[2026-10-23 10:00:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb142512782","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:37] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-23 10:00:37] testing.INFO: Old stock: 10  
[2026-10-23 10:00:37] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:37] testing.INFO: New stock: 6  
[2026-10-23 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb142512782"} 
[2026-10-23 10:00:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adb1425401a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:37] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-23 10:00:37] testing.INFO: Old stock: 5  
[2026-10-23 10:00:37] testing.INFO: Quantity deducted: 4  
[2026-10-23 10:00:37] testing.INFO: New stock: 1  
[2026-10-23 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1425401a6"} 
[2026-10-23 10:00:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb1425604de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:37] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-23 10:00:37] testing.INFO: Old stock: 10  
[2026-10-23 10:00:37] testing.INFO: Quantity deducted: 5  
[2026-10-23 10:00:37] testing.INFO: New stock: 5  
[2026-10-23 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1425604de"} 
[2026-10-23 10:00:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb142593761","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:37] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-23 10:00:37] testing.INFO: Old stock: 12  
[2026-10-23 10:00:37] testing.INFO: Quantity deducted: 5  
[2026-10-23 10:00:37] testing.INFO: New stock: 7  
[2026-10-23 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb142593761"} 
[2026-10-23 10:00:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adb1425afbdb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-23 10:00:37] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-23 10:00:37] testing.INFO: Old stock: 12  
[2026-10-23 10:00:37] testing.INFO: Quantity deducted: 5  
[2026-10-23 10:00:37] testing.INFO: New stock: 7  
[2026-10-23 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adb1425afbdb"} 
[2026-10-24 17:16:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-X1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 17:16:01] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 17:16:01] testing.INFO: Old stock: 10  
[2026-10-24 17:16:01] testing.INFO: Quantity deducted: 1  
[2026-10-24 17:16:01] testing.INFO: New stock: 9  
[2026-10-24 17:16:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-X1"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792000000000001","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 2 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000001"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-1792000000000002","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 3 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000002"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000003","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 4 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000003"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-1792000000000004","payment_status":"paid","payment_method":"airtel_money"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 5 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000004"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-1792000000000005","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 6 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000005"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000006","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 7 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000006"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-1792000000000007","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 8 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000007"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-1792000000000008","payment_status":"paid","payment_method":"airtel_money"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 9 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000008"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000009","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 10 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000009"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-1792000000000010","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":5400},{"method":"airtel_money","amount":100}]}} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-1792000000000011","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 12 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000011"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-1792000000000012","payment_status":"paid","payment_method":"airtel_money"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 13 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000012"} 
[2026-10-24 18:18:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-1792000000000013","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:05] testing.INFO: Stock deduction for product: Medicine product number 14 500mg tablets  
[2026-10-24 18:18:05] testing.INFO: Old stock: 500  
[2026-10-24 18:18:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:05] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000013"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-1792000000000014","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 15 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000014"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-1792000000000015","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 16 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000015"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-1792000000000016","payment_status":"paid","payment_method":"airtel_money"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 17 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000016"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-1792000000000017","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 18 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000017"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-1792000000000018","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 19 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000018"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-1792000000000019","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 20 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000019"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-1792000000000020","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":10400},{"method":"airtel_money","amount":100}]}} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-1792000000000021","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 22 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000021"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-1792000000000022","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 23 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000022"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-1792000000000023","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 24 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000023"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-1792000000000024","payment_status":"paid","payment_method":"airtel_money"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 25 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000024"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792000000000025","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 1 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 500  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 499  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000025"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792000000000026","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 2 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 499  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 498  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000026"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-1792000000000027","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 3 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 499  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 498  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000027"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000028","payment_status":"paid","payment_method":"airtel_money"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 4 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 499  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 498  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000028"} 
[2026-10-24 18:18:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-1792000000000029","payment_status":"paid","payment_method":"cash"}} 
[2026-10-24 18:18:06] testing.INFO: Stock deduction for product: Medicine product number 5 500mg tablets  
[2026-10-24 18:18:06] testing.INFO: Old stock: 499  
[2026-10-24 18:18:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:18:06] testing.INFO: New stock: 498  
[2026-10-24 18:18:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000029"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda7629e0c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:02] testing.INFO: Old stock: 100  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:02] testing.INFO: New stock: 96  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7629e0c"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcda763c6e3","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:02] testing.INFO: Old stock: 96  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:02] testing.INFO: New stock: 65  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda763c6e3"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda766762c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:02] testing.INFO: Old stock: 100  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:02] testing.INFO: New stock: 96  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda766762c"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcda76720c3","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:02] testing.INFO: Old stock: 96  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:02] testing.INFO: New stock: 65  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda76720c3"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda768d2b0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:02] testing.INFO: Old stock: 100  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:02] testing.INFO: New stock: 96  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda768d2b0"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcda7695ae3","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:02] testing.INFO: Old stock: 96  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:02] testing.INFO: New stock: 65  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7695ae3"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda76e2293","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:02] testing.INFO: Old stock: 100  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:02] testing.INFO: New stock: 96  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda76e2293"} 
[2026-10-24 18:19:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcda76ea834","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:02] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:02] testing.INFO: Old stock: 96  
[2026-10-24 18:19:02] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:02] testing.INFO: New stock: 65  
[2026-10-24 18:19:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda76ea834"} 
[2026-10-24 18:19:03] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-24 18:19:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda7877027","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:04] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:04] testing.INFO: Old stock: 200  
[2026-10-24 18:19:04] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:04] testing.INFO: New stock: 196  
[2026-10-24 18:19:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7877027"} 
[2026-10-24 18:19:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda787f788","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:04] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:04] testing.INFO: Old stock: 196  
[2026-10-24 18:19:04] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:04] testing.INFO: New stock: 194  
[2026-10-24 18:19:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda787f788"} 
[2026-10-24 18:19:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcda78856ba","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-24 18:19:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcda788c602","payment_method":"card","payment_status":"paid"}} 
[2026-10-24 18:19:04] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:04] testing.INFO: Old stock: 191  
[2026-10-24 18:19:04] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:04] testing.INFO: New stock: 190  
[2026-10-24 18:19:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda788c602"} 
[2026-10-24 18:19:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda7921a96","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:05] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:05] testing.INFO: Old stock: 200  
[2026-10-24 18:19:05] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:05] testing.INFO: New stock: 196  
[2026-10-24 18:19:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7921a96"} 
[2026-10-24 18:19:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda793481e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:05] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:05] testing.INFO: Old stock: 196  
[2026-10-24 18:19:05] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:05] testing.INFO: New stock: 194  
[2026-10-24 18:19:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda793481e"} 
[2026-10-24 18:19:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda7959c68","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:05] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:05] testing.INFO: Old stock: 200  
[2026-10-24 18:19:05] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:05] testing.INFO: New stock: 196  
[2026-10-24 18:19:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7959c68"} 
[2026-10-24 18:19:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcda798b2a8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:05] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:05] testing.INFO: Old stock: 196  
[2026-10-24 18:19:05] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:05] testing.INFO: New stock: 195  
[2026-10-24 18:19:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda798b2a8"} 
[2026-10-24 18:19:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda7a13ba2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:06] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:06] testing.INFO: Old stock: 200  
[2026-10-24 18:19:06] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:06] testing.INFO: New stock: 196  
[2026-10-24 18:19:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7a13ba2"} 
[2026-10-24 18:19:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T17:49:06+02:00"}} 
[2026-10-24 18:19:06] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:06] testing.INFO: Old stock: 196  
[2026-10-24 18:19:06] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:06] testing.INFO: New stock: 195  
[2026-10-24 18:19:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-24 18:19:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcda7ad9fce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:06] testing.INFO: Old stock: 10  
[2026-10-24 18:19:06] testing.INFO: Quantity deducted: 3  
[2026-10-24 18:19:06] testing.INFO: New stock: 7  
[2026-10-24 18:19:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7ad9fce"} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adcda7af396b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:07] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:07] testing.INFO: Old stock: 10  
[2026-10-24 18:19:07] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:07] testing.INFO: New stock: 8  
[2026-10-24 18:19:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7af396b"} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcda7b19b4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcda7b2f6e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adcda7b42269","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7b55100","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7b680fe","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7b9bc9e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:07] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:07] testing.INFO: Old stock: 10  
[2026-10-24 18:19:07] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:07] testing.INFO: New stock: 8  
[2026-10-24 18:19:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7b9bc9e"} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7bcd4b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:07] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:07] testing.INFO: Old stock: 10  
[2026-10-24 18:19:07] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:07] testing.INFO: New stock: 8  
[2026-10-24 18:19:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7bcd4b6"} 
[2026-10-24 18:19:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7bf2342","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:08] testing.INFO: Old stock: 10  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:08] testing.INFO: New stock: 8  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7bf2342"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7c1e8bf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:08] testing.INFO: Old stock: 3  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:08] testing.INFO: New stock: 1  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7c1e8bf"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda7c59b5f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-24 18:19:08] testing.INFO: Old stock: 10  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:08] testing.INFO: New stock: 8  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7c59b5f"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:08] testing.INFO: Old stock: 10  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:08] testing.INFO: New stock: 8  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:08] testing.INFO: Old stock: 10  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:08] testing.INFO: New stock: 9  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T16:19:00+02:00"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:08] testing.INFO: Old stock: 10  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:08] testing.INFO: New stock: 9  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-27T18:19:08+02:00"}} 
[2026-10-24 18:19:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:08] testing.INFO: Old stock: 10  
[2026-10-24 18:19:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:08] testing.INFO: New stock: 9  
[2026-10-24 18:19:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:08+02:00"}} 
[2026-10-24 18:19:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:09+02:00"}} 
[2026-10-24 18:19:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:09+02:00"}} 
[2026-10-24 18:19:09] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-24 18:19:09] testing.INFO: Old stock: 5  
[2026-10-24 18:19:09] testing.INFO: Quantity deducted: 3  
[2026-10-24 18:19:09] testing.INFO: New stock: 2  
[2026-10-24 18:19:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:09+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-24 18:19:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T15:19:09+02:00"}} 
[2026-10-24 18:19:09] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-24 18:19:09] testing.INFO: Old stock: 10  
[2026-10-24 18:19:09] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:09] testing.INFO: New stock: 9  
[2026-10-24 18:19:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adcda7f79c00","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:11] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-24 18:19:11] testing.INFO: Old stock: 16  
[2026-10-24 18:19:11] testing.INFO: Quantity deducted: 6  
[2026-10-24 18:19:11] testing.INFO: New stock: 10  
[2026-10-24 18:19:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda7f79c00"} 
[2026-10-24 18:19:12] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-24 18:19:12] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-24 18:19:12] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-24 18:19:12"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-24 18:19:12] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-24 18:19:13] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-23"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-24 18:19:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcda815a91c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcda81621e2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:13] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-24 18:19:13] testing.INFO: Old stock: 2  
[2026-10-24 18:19:13] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:13] testing.INFO: New stock: 1  
[2026-10-24 18:19:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda81621e2"} 
[2026-10-24 18:19:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:13] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-24 18:19:13] testing.INFO: Old stock: 35  
[2026-10-24 18:19:13] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:13] testing.INFO: New stock: 33  
[2026-10-24 18:19:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-24 18:19:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcda82128c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:14] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-24 18:19:14] testing.INFO: Old stock: 13  
[2026-10-24 18:19:14] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:19:14] testing.INFO: New stock: 8  
[2026-10-24 18:19:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda82128c5"} 
[2026-10-24 18:19:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda821b409","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:14] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-24 18:19:14] testing.INFO: Old stock: 8  
[2026-10-24 18:19:14] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:14] testing.INFO: New stock: 4  
[2026-10-24 18:19:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda821b409"} 
[2026-10-24 18:19:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adcda8258f39","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:14] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-24 18:19:14] testing.INFO: Old stock: 8  
[2026-10-24 18:19:14] testing.INFO: Quantity deducted: 6  
[2026-10-24 18:19:14] testing.INFO: New stock: 2  
[2026-10-24 18:19:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8258f39"} 
[2026-10-24 18:19:14] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-24 18:19:14] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-24 18:19:14] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-24 18:19:14"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-24 18:19:14] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-24 18:19:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:17] testing.INFO: Old stock: 10  
[2026-10-24 18:19:17] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:17] testing.INFO: New stock: 9  
[2026-10-24 18:19:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-24 18:19:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:17] testing.INFO: Old stock: 10  
[2026-10-24 18:19:17] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:17] testing.INFO: New stock: 9  
[2026-10-24 18:19:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-24 18:19:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:17] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:17] testing.INFO: Old stock: 10  
[2026-10-24 18:19:17] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:17] testing.INFO: New stock: 9  
[2026-10-24 18:19:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-24 18:19:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:17] testing.INFO: Old stock: 10  
[2026-10-24 18:19:17] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:17] testing.INFO: New stock: 9  
[2026-10-24 18:19:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-24 18:19:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcda85ed48c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:18] testing.INFO: Old stock: 100  
[2026-10-24 18:19:18] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:18] testing.INFO: New stock: 99  
[2026-10-24 18:19:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda85ed48c"} 
[2026-10-24 18:19:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda86037df","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:18] testing.INFO: Old stock: 99  
[2026-10-24 18:19:18] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:18] testing.INFO: New stock: 97  
[2026-10-24 18:19:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda86037df"} 
[2026-10-24 18:19:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcda86093c4","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-24 18:19:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda871bdd6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:19] testing.INFO: Old stock: 50  
[2026-10-24 18:19:19] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:19] testing.INFO: New stock: 48  
[2026-10-24 18:19:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda871bdd6"} 
[2026-10-24 18:19:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcda872d701","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:19] testing.INFO: Old stock: 48  
[2026-10-24 18:19:19] testing.INFO: Quantity deducted: 3  
[2026-10-24 18:19:19] testing.INFO: New stock: 45  
[2026-10-24 18:19:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda872d701"} 
[2026-10-24 18:19:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda87b31c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:19] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:19] testing.INFO: Old stock: 20  
[2026-10-24 18:19:19] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:19] testing.INFO: New stock: 18  
[2026-10-24 18:19:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda87b31c6"} 
[2026-10-24 18:19:20] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-24 18:19:20"}  
[2026-10-24 18:19:20] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-24 18:19:20] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-24 18:19:20] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-24 18:19:20] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-24 18:19:20] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-24 18:19:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcda88884a9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:20] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-24 18:19:20] testing.INFO: Old stock: 70  
[2026-10-24 18:19:20] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:19:20] testing.INFO: New stock: 65  
[2026-10-24 18:19:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda88884a9"} 
[2026-10-24 18:19:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-24 18:19:20] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-24 18:19:20] testing.INFO: Old stock: 62  
[2026-10-24 18:19:20] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:20] testing.INFO: New stock: 60  
[2026-10-24 18:19:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-24 18:19:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda88d50e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:20] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-24 18:19:20] testing.INFO: Old stock: 59  
[2026-10-24 18:19:20] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:20] testing.INFO: New stock: 55  
[2026-10-24 18:19:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda88d50e5"} 
[2026-10-24 18:19:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda8987c86","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:21] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:21] testing.INFO: Old stock: 10  
[2026-10-24 18:19:21] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:21] testing.INFO: New stock: 6  
[2026-10-24 18:19:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8987c86"} 
[2026-10-24 18:19:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcda89b2330","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:21] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:21] testing.INFO: Old stock: 10  
[2026-10-24 18:19:21] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:19:21] testing.INFO: New stock: 5  
[2026-10-24 18:19:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda89b2330"} 
[2026-10-24 18:19:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda89d2a3c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:21] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-24 18:19:21] testing.INFO: Old stock: 10  
[2026-10-24 18:19:21] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:21] testing.INFO: New stock: 6  
[2026-10-24 18:19:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda89d2a3c"} 
[2026-10-24 18:19:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcda8a0c746","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:22] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-24 18:19:22] testing.INFO: Old stock: 5  
[2026-10-24 18:19:22] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:22] testing.INFO: New stock: 1  
[2026-10-24 18:19:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8a0c746"} 
[2026-10-24 18:19:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcda8a3566f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:22] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-24 18:19:22] testing.INFO: Old stock: 10  
[2026-10-24 18:19:22] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:19:22] testing.INFO: New stock: 5  
[2026-10-24 18:19:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8a3566f"} 
[2026-10-24 18:19:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcda8a63f66","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:22] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-24 18:19:22] testing.INFO: Old stock: 12  
[2026-10-24 18:19:22] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:19:22] testing.INFO: New stock: 7  
[2026-10-24 18:19:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8a63f66"} 
[2026-10-24 18:19:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcda8a7fbcb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:22] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-24 18:19:22] testing.INFO: Old stock: 12  
[2026-10-24 18:19:22] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:19:22] testing.INFO: New stock: 7  
[2026-10-24 18:19:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8a7fbcb"} 
[2026-10-24 18:19:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda8be34b5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:23] testing.INFO: Old stock: 10  
[2026-10-24 18:19:23] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:23] testing.INFO: New stock: 8  
[2026-10-24 18:19:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8be34b5"} 
[2026-10-24 18:19:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda8caa04a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:24] testing.INFO: Old stock: 10  
[2026-10-24 18:19:24] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:24] testing.INFO: New stock: 8  
[2026-10-24 18:19:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8caa04a"} 
[2026-10-24 18:19:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda8d42fb0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:25] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:25] testing.INFO: Old stock: 10  
[2026-10-24 18:19:25] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:25] testing.INFO: New stock: 8  
[2026-10-24 18:19:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8d42fb0"} 
[2026-10-24 18:19:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcda8de5439","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:25] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:25] testing.INFO: Old stock: 10  
[2026-10-24 18:19:25] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:25] testing.INFO: New stock: 8  
[2026-10-24 18:19:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcda8de5439"} 
[2026-10-24 18:19:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa0a0b2c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:44] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:44] testing.INFO: Old stock: 100  
[2026-10-24 18:19:44] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:44] testing.INFO: New stock: 96  
[2026-10-24 18:19:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa0a0b2c"} 
[2026-10-24 18:19:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcdaa0b5563","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:44] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:44] testing.INFO: Old stock: 96  
[2026-10-24 18:19:44] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:44] testing.INFO: New stock: 65  
[2026-10-24 18:19:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa0b5563"} 
[2026-10-24 18:19:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa0ebaaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:45] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:45] testing.INFO: Old stock: 100  
[2026-10-24 18:19:45] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:45] testing.INFO: New stock: 96  
[2026-10-24 18:19:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa0ebaaa"} 
[2026-10-24 18:19:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcdaa1053bb","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:45] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:45] testing.INFO: Old stock: 96  
[2026-10-24 18:19:45] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:45] testing.INFO: New stock: 65  
[2026-10-24 18:19:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa1053bb"} 
[2026-10-24 18:19:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa129e4e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:45] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:45] testing.INFO: Old stock: 100  
[2026-10-24 18:19:45] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:45] testing.INFO: New stock: 96  
[2026-10-24 18:19:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa129e4e"} 
[2026-10-24 18:19:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcdaa1374e6","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:45] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:45] testing.INFO: Old stock: 96  
[2026-10-24 18:19:45] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:45] testing.INFO: New stock: 65  
[2026-10-24 18:19:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa1374e6"} 
[2026-10-24 18:19:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa1aa0d7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:45] testing.INFO: Old stock: 100  
[2026-10-24 18:19:45] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:45] testing.INFO: New stock: 96  
[2026-10-24 18:19:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa1aa0d7"} 
[2026-10-24 18:19:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adcdaa1b8587","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:45] testing.INFO: Old stock: 96  
[2026-10-24 18:19:45] testing.INFO: Quantity deducted: 31  
[2026-10-24 18:19:45] testing.INFO: New stock: 65  
[2026-10-24 18:19:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa1b8587"} 
[2026-10-24 18:19:46] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-24 18:19:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa4076bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:48] testing.INFO: Old stock: 200  
[2026-10-24 18:19:48] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:48] testing.INFO: New stock: 196  
[2026-10-24 18:19:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa4076bc"} 
[2026-10-24 18:19:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa4172b0","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:19:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:48] testing.INFO: Old stock: 196  
[2026-10-24 18:19:48] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:48] testing.INFO: New stock: 194  
[2026-10-24 18:19:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa4172b0"} 
[2026-10-24 18:19:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcdaa422e9c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-24 18:19:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcdaa431184","payment_method":"card","payment_status":"paid"}} 
[2026-10-24 18:19:48] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:48] testing.INFO: Old stock: 191  
[2026-10-24 18:19:48] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:48] testing.INFO: New stock: 190  
[2026-10-24 18:19:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa431184"} 
[2026-10-24 18:19:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa546de8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:49] testing.INFO: Old stock: 200  
[2026-10-24 18:19:49] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:49] testing.INFO: New stock: 196  
[2026-10-24 18:19:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa546de8"} 
[2026-10-24 18:19:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa5591a8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:49] testing.INFO: Old stock: 196  
[2026-10-24 18:19:49] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:49] testing.INFO: New stock: 194  
[2026-10-24 18:19:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa5591a8"} 
[2026-10-24 18:19:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa5b5c93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:49] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:49] testing.INFO: Old stock: 200  
[2026-10-24 18:19:49] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:49] testing.INFO: New stock: 196  
[2026-10-24 18:19:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa5b5c93"} 
[2026-10-24 18:19:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcdaa616cea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:50] testing.INFO: Old stock: 196  
[2026-10-24 18:19:50] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:50] testing.INFO: New stock: 195  
[2026-10-24 18:19:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa616cea"} 
[2026-10-24 18:19:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdaa6d66a1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:50] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:50] testing.INFO: Old stock: 200  
[2026-10-24 18:19:50] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:19:50] testing.INFO: New stock: 196  
[2026-10-24 18:19:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa6d66a1"} 
[2026-10-24 18:19:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T17:49:50+02:00"}} 
[2026-10-24 18:19:51] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:51] testing.INFO: Old stock: 196  
[2026-10-24 18:19:51] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:51] testing.INFO: New stock: 195  
[2026-10-24 18:19:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcdaa80564a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:52] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:52] testing.INFO: Old stock: 10  
[2026-10-24 18:19:52] testing.INFO: Quantity deducted: 3  
[2026-10-24 18:19:52] testing.INFO: New stock: 7  
[2026-10-24 18:19:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa80564a"} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adcdaa82ef54","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:52] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:52] testing.INFO: Old stock: 10  
[2026-10-24 18:19:52] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:52] testing.INFO: New stock: 8  
[2026-10-24 18:19:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa82ef54"} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcdaa856d7e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcdaa87551c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adcdaa89326a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa8aeab9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-24 18:19:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa8cb43c","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-24 18:19:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa92d76f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:53] testing.INFO: Old stock: 10  
[2026-10-24 18:19:53] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:53] testing.INFO: New stock: 8  
[2026-10-24 18:19:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa92d76f"} 
[2026-10-24 18:19:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa96fa58","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:53] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:53] testing.INFO: Old stock: 10  
[2026-10-24 18:19:53] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:53] testing.INFO: New stock: 8  
[2026-10-24 18:19:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa96fa58"} 
[2026-10-24 18:19:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaa9bc4e7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:53] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:53] testing.INFO: Old stock: 10  
[2026-10-24 18:19:53] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:53] testing.INFO: New stock: 8  
[2026-10-24 18:19:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaa9bc4e7"} 
[2026-10-24 18:19:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaaa06c3d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:54] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:54] testing.INFO: Old stock: 3  
[2026-10-24 18:19:54] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:54] testing.INFO: New stock: 1  
[2026-10-24 18:19:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaaa06c3d"} 
[2026-10-24 18:19:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaaa6070c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:54] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-24 18:19:54] testing.INFO: Old stock: 10  
[2026-10-24 18:19:54] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:54] testing.INFO: New stock: 8  
[2026-10-24 18:19:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaaa6070c"} 
[2026-10-24 18:19:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:19:54] testing.INFO: Old stock: 10  
[2026-10-24 18:19:54] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:19:54] testing.INFO: New stock: 8  
[2026-10-24 18:19:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:54] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:19:54] testing.INFO: Old stock: 10  
[2026-10-24 18:19:54] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:54] testing.INFO: New stock: 9  
[2026-10-24 18:19:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T16:19:00+02:00"}} 
[2026-10-24 18:19:54] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:19:54] testing.INFO: Old stock: 10  
[2026-10-24 18:19:54] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:54] testing.INFO: New stock: 9  
[2026-10-24 18:19:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-27T18:19:55+02:00"}} 
[2026-10-24 18:19:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:19:55] testing.INFO: Old stock: 10  
[2026-10-24 18:19:55] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:55] testing.INFO: New stock: 9  
[2026-10-24 18:19:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:55+02:00"}} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:55+02:00"}} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:55+02:00"}} 
[2026-10-24 18:19:55] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-24 18:19:55] testing.INFO: Old stock: 5  
[2026-10-24 18:19:55] testing.INFO: Quantity deducted: 3  
[2026-10-24 18:19:55] testing.INFO: New stock: 2  
[2026-10-24 18:19:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T18:19:55+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-24 18:19:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-24T15:19:55+02:00"}} 
[2026-10-24 18:19:55] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-24 18:19:55] testing.INFO: Old stock: 10  
[2026-10-24 18:19:55] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:19:55] testing.INFO: New stock: 9  
[2026-10-24 18:19:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-24 18:19:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adcdaaf12e20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:19:59] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-24 18:19:59] testing.INFO: Old stock: 16  
[2026-10-24 18:19:59] testing.INFO: Quantity deducted: 6  
[2026-10-24 18:19:59] testing.INFO: New stock: 10  
[2026-10-24 18:19:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaaf12e20"} 
[2026-10-24 18:20:00] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-24 18:20:00] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-24 18:20:00] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-24 18:20:00"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-24 18:20:00] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-24 18:20:01] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-23"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-24 18:20:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcdab1b8638","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcdab1c53da","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:01] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-24 18:20:01] testing.INFO: Old stock: 2  
[2026-10-24 18:20:01] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:20:01] testing.INFO: New stock: 1  
[2026-10-24 18:20:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdab1c53da"} 
[2026-10-24 18:20:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:02] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-24 18:20:02] testing.INFO: Old stock: 35  
[2026-10-24 18:20:02] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:02] testing.INFO: New stock: 33  
[2026-10-24 18:20:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-24 18:20:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcdab2e55aa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:02] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-24 18:20:02] testing.INFO: Old stock: 13  
[2026-10-24 18:20:02] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:20:02] testing.INFO: New stock: 8  
[2026-10-24 18:20:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdab2e55aa"} 
[2026-10-24 18:20:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdab302427","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:03] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-24 18:20:03] testing.INFO: Old stock: 8  
[2026-10-24 18:20:03] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:20:03] testing.INFO: New stock: 4  
[2026-10-24 18:20:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdab302427"} 
[2026-10-24 18:20:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adcdab35c9bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:03] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-24 18:20:03] testing.INFO: Old stock: 8  
[2026-10-24 18:20:03] testing.INFO: Quantity deducted: 6  
[2026-10-24 18:20:03] testing.INFO: New stock: 2  
[2026-10-24 18:20:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdab35c9bc"} 
[2026-10-24 18:20:03] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-24 18:20:03] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-24 18:20:03] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-24 18:20:03"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-24 18:20:03] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-24 18:20:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:07] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:20:07] testing.INFO: Old stock: 10  
[2026-10-24 18:20:07] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:20:07] testing.INFO: New stock: 9  
[2026-10-24 18:20:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-24 18:20:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:20:08] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:20:08] testing.INFO: Old stock: 10  
[2026-10-24 18:20:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:20:08] testing.INFO: New stock: 9  
[2026-10-24 18:20:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-24 18:20:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:20:08] testing.INFO: Old stock: 10  
[2026-10-24 18:20:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:20:08] testing.INFO: New stock: 9  
[2026-10-24 18:20:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-24 18:20:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:20:08] testing.INFO: Old stock: 10  
[2026-10-24 18:20:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:20:08] testing.INFO: New stock: 9  
[2026-10-24 18:20:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-24 18:20:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adcdab8c1e07","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:20:08] testing.INFO: Old stock: 100  
[2026-10-24 18:20:08] testing.INFO: Quantity deducted: 1  
[2026-10-24 18:20:08] testing.INFO: New stock: 99  
[2026-10-24 18:20:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdab8c1e07"} 
[2026-10-24 18:20:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdab8d026e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-24 18:20:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:20:08] testing.INFO: Old stock: 99  
[2026-10-24 18:20:08] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:08] testing.INFO: New stock: 97  
[2026-10-24 18:20:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdab8d026e"} 
[2026-10-24 18:20:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcdab8dbcd1","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-24 18:20:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdaba7bb8b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:20:10] testing.INFO: Old stock: 50  
[2026-10-24 18:20:10] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:10] testing.INFO: New stock: 48  
[2026-10-24 18:20:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaba7bb8b"} 
[2026-10-24 18:20:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adcdaba953cd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:20:10] testing.INFO: Old stock: 48  
[2026-10-24 18:20:10] testing.INFO: Quantity deducted: 3  
[2026-10-24 18:20:10] testing.INFO: New stock: 45  
[2026-10-24 18:20:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdaba953cd"} 
[2026-10-24 18:20:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdabb769bf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:11] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:20:11] testing.INFO: Old stock: 20  
[2026-10-24 18:20:11] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:11] testing.INFO: New stock: 18  
[2026-10-24 18:20:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabb769bf"} 
[2026-10-24 18:20:12] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-24 18:20:12"}  
[2026-10-24 18:20:12] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-24 18:20:12] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-24 18:20:12] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-24 18:20:12] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-24 18:20:12] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-24 18:20:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcdabccbb8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:12] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-24 18:20:12] testing.INFO: Old stock: 70  
[2026-10-24 18:20:12] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:20:12] testing.INFO: New stock: 65  
[2026-10-24 18:20:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabccbb8f"} 
[2026-10-24 18:20:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-24 18:20:12] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-24 18:20:12] testing.INFO: Old stock: 62  
[2026-10-24 18:20:12] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:12] testing.INFO: New stock: 60  
[2026-10-24 18:20:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-24 18:20:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdabd495dd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:13] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-24 18:20:13] testing.INFO: Old stock: 59  
[2026-10-24 18:20:13] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:20:13] testing.INFO: New stock: 55  
[2026-10-24 18:20:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabd495dd"} 
[2026-10-24 18:20:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdabe74f83","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:14] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:20:14] testing.INFO: Old stock: 10  
[2026-10-24 18:20:14] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:20:14] testing.INFO: New stock: 6  
[2026-10-24 18:20:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabe74f83"} 
[2026-10-24 18:20:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcdabea7724","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:14] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:20:14] testing.INFO: Old stock: 10  
[2026-10-24 18:20:14] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:20:14] testing.INFO: New stock: 5  
[2026-10-24 18:20:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabea7724"} 
[2026-10-24 18:20:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdabedda9c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:14] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-24 18:20:14] testing.INFO: Old stock: 10  
[2026-10-24 18:20:14] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:20:14] testing.INFO: New stock: 6  
[2026-10-24 18:20:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabedda9c"} 
[2026-10-24 18:20:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adcdabf2df47","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:15] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-24 18:20:15] testing.INFO: Old stock: 5  
[2026-10-24 18:20:15] testing.INFO: Quantity deducted: 4  
[2026-10-24 18:20:15] testing.INFO: New stock: 1  
[2026-10-24 18:20:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabf2df47"} 
[2026-10-24 18:20:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcdabf5fbdc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:15] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-24 18:20:15] testing.INFO: Old stock: 10  
[2026-10-24 18:20:15] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:20:15] testing.INFO: New stock: 5  
[2026-10-24 18:20:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabf5fbdc"} 
[2026-10-24 18:20:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcdabfa5679","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:15] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-24 18:20:15] testing.INFO: Old stock: 12  
[2026-10-24 18:20:15] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:20:15] testing.INFO: New stock: 7  
[2026-10-24 18:20:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabfa5679"} 
[2026-10-24 18:20:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adcdabfcf0c9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:15] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-24 18:20:15] testing.INFO: Old stock: 12  
[2026-10-24 18:20:15] testing.INFO: Quantity deducted: 5  
[2026-10-24 18:20:15] testing.INFO: New stock: 7  
[2026-10-24 18:20:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdabfcf0c9"} 
[2026-10-24 18:20:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdac2027a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-24 18:20:18] testing.INFO: Old stock: 10  
[2026-10-24 18:20:18] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:18] testing.INFO: New stock: 8  
[2026-10-24 18:20:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdac2027a4"} 
[2026-10-24 18:20:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdac31c025","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-24 18:20:19] testing.INFO: Old stock: 10  
[2026-10-24 18:20:19] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:19] testing.INFO: New stock: 8  
[2026-10-24 18:20:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdac31c025"} 
[2026-10-24 18:20:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdac3efb35","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-24 18:20:20] testing.INFO: Old stock: 10  
[2026-10-24 18:20:20] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:20] testing.INFO: New stock: 8  
[2026-10-24 18:20:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdac3efb35"} 
[2026-10-24 18:20:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adcdac4b685f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-24 18:20:20] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-24 18:20:20] testing.INFO: Old stock: 10  
[2026-10-24 18:20:20] testing.INFO: Quantity deducted: 2  
[2026-10-24 18:20:20] testing.INFO: New stock: 8  
[2026-10-24 18:20:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adcdac4b685f"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-1792000000000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 2 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:19] testing.INFO: New stock: 98  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000001"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-1792000000000002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 3 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:19] testing.INFO: New stock: 97  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000002"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000003","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 4 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:19] testing.INFO: New stock: 99  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000003"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":2}],"invoice_no":"INV-1792000000000004","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 5 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:19] testing.INFO: New stock: 98  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000004"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":3}],"invoice_no":"INV-1792000000000005","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 6 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:19] testing.INFO: New stock: 97  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000005"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000006","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 7 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:19] testing.INFO: New stock: 99  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000006"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":2}],"invoice_no":"INV-1792000000000007","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 8 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:19] testing.INFO: New stock: 98  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000007"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":3}],"invoice_no":"INV-1792000000000008","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 9 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:19] testing.INFO: New stock: 97  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000008"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000009","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 10 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:19] testing.INFO: New stock: 99  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000009"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":2}],"invoice_no":"INV-1792000000000010","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 11 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:19] testing.INFO: New stock: 98  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000010"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":3}],"invoice_no":"INV-1792000000000011","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 12 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:19] testing.INFO: New stock: 97  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000011"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-1792000000000012","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 13 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:19] testing.INFO: New stock: 99  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000012"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":2}],"invoice_no":"INV-1792000000000013","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 14 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:19] testing.INFO: New stock: 98  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000013"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":3}],"invoice_no":"INV-1792000000000014","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 15 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:19] testing.INFO: New stock: 97  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000014"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-1792000000000015","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 16 500mg  
[2026-10-25 09:06:19] testing.INFO: Old stock: 100  
[2026-10-25 09:06:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:19] testing.INFO: New stock: 99  
[2026-10-25 09:06:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000015"} 
[2026-10-25 09:06:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":2}],"invoice_no":"INV-1792000000000016","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:19] testing.INFO: Stock deduction for product: Médicament product 17 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000016"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":3}],"invoice_no":"INV-1792000000000017","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 18 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 97  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000017"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-1792000000000018","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 19 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 99  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000018"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":2}],"invoice_no":"INV-1792000000000019","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 20 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000019"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":3}],"invoice_no":"INV-1792000000000020","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 21 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 97  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000020"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-1792000000000021","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 22 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 99  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000021"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":2}],"invoice_no":"INV-1792000000000022","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 23 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000022"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":3}],"invoice_no":"INV-1792000000000023","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 24 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 97  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000023"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-1792000000000024","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 25 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 99  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000024"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":2}],"invoice_no":"INV-1792000000000025","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 26 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000025"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":3}],"invoice_no":"INV-1792000000000026","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 27 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 97  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000026"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-1792000000000027","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 28 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 99  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000027"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":2}],"invoice_no":"INV-1792000000000028","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 29 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000028"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":3}],"invoice_no":"INV-1792000000000029","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 30 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 97  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000029"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792000000000030","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 1 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 100  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 99  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000030"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-1792000000000031","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 2 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 98  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 96  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000031"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-1792000000000032","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 3 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 97  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 94  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000032"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000033","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 4 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 99  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000033"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":2}],"invoice_no":"INV-1792000000000034","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 5 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 98  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 96  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000034"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":3}],"invoice_no":"INV-1792000000000035","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 6 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 97  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 94  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000035"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000036","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 7 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 99  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000036"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":2}],"invoice_no":"INV-1792000000000037","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 8 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 98  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 96  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000037"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":3}],"invoice_no":"INV-1792000000000038","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 9 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 97  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:20] testing.INFO: New stock: 94  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000038"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000039","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 10 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 99  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:20] testing.INFO: New stock: 98  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000039"} 
[2026-10-25 09:06:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":2}],"invoice_no":"INV-1792000000000040","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:20] testing.INFO: Stock deduction for product: Médicament product 11 500mg  
[2026-10-25 09:06:20] testing.INFO: Old stock: 98  
[2026-10-25 09:06:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:20] testing.INFO: New stock: 96  
[2026-10-25 09:06:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000040"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-1792000000000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 2 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:59] testing.INFO: New stock: 98  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000001"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-1792000000000002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 3 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:59] testing.INFO: New stock: 97  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000002"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000003","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 4 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:59] testing.INFO: New stock: 99  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000003"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":2}],"invoice_no":"INV-1792000000000004","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 5 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:59] testing.INFO: New stock: 98  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000004"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":3}],"invoice_no":"INV-1792000000000005","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 6 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:59] testing.INFO: New stock: 97  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000005"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000006","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 7 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:06:59] testing.INFO: New stock: 99  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000006"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":2}],"invoice_no":"INV-1792000000000007","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 8 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:06:59] testing.INFO: New stock: 98  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000007"} 
[2026-10-25 09:06:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":3}],"invoice_no":"INV-1792000000000008","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:06:59] testing.INFO: Stock deduction for product: Médicament product 9 500mg  
[2026-10-25 09:06:59] testing.INFO: Old stock: 100  
[2026-10-25 09:06:59] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:06:59] testing.INFO: New stock: 97  
[2026-10-25 09:06:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000008"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000009","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 10 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000009"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":2}],"invoice_no":"INV-1792000000000010","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 11 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000010"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":3}],"invoice_no":"INV-1792000000000011","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 12 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000011"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-1792000000000012","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 13 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000012"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":2}],"invoice_no":"INV-1792000000000013","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 14 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000013"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":3}],"invoice_no":"INV-1792000000000014","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 15 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000014"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-1792000000000015","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 16 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000015"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":2}],"invoice_no":"INV-1792000000000016","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 17 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000016"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":3}],"invoice_no":"INV-1792000000000017","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 18 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000017"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-1792000000000018","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 19 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000018"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":2}],"invoice_no":"INV-1792000000000019","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 20 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000019"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":3}],"invoice_no":"INV-1792000000000020","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 21 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000020"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-1792000000000021","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 22 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000021"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":2}],"invoice_no":"INV-1792000000000022","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 23 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000022"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":3}],"invoice_no":"INV-1792000000000023","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 24 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000023"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-1792000000000024","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 25 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000024"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":2}],"invoice_no":"INV-1792000000000025","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 26 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000025"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":3}],"invoice_no":"INV-1792000000000026","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 27 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000026"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-1792000000000027","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 28 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000027"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":2}],"invoice_no":"INV-1792000000000028","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 29 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000028"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":3}],"invoice_no":"INV-1792000000000029","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 30 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 97  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000029"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792000000000030","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 1 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 100  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 99  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000030"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-1792000000000031","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 2 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 98  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 96  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000031"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-1792000000000032","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 3 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 97  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 94  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000032"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000033","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 4 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 99  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000033"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":2}],"invoice_no":"INV-1792000000000034","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 5 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 98  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 96  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000034"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":3}],"invoice_no":"INV-1792000000000035","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 6 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 97  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 94  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000035"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000036","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 7 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 99  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000036"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":2}],"invoice_no":"INV-1792000000000037","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 8 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 98  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 96  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000037"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":3}],"invoice_no":"INV-1792000000000038","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 9 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 97  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:07:00] testing.INFO: New stock: 94  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000038"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000039","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 10 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 99  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:07:00] testing.INFO: New stock: 98  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000039"} 
[2026-10-25 09:07:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":2}],"invoice_no":"INV-1792000000000040","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:07:00] testing.INFO: Stock deduction for product: Médicament product 11 500mg  
[2026-10-25 09:07:00] testing.INFO: Old stock: 98  
[2026-10-25 09:07:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:07:00] testing.INFO: New stock: 96  
[2026-10-25 09:07:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000040"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-1792000000000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 2 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000001"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-1792000000000002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 3 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000002"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000003","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 4 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000003"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":2}],"invoice_no":"INV-1792000000000004","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 5 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000004"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":3}],"invoice_no":"INV-1792000000000005","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 6 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000005"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000006","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 7 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 2  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 1  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000006"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":2}],"invoice_no":"INV-1792000000000007","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 8 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000007"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":3}],"invoice_no":"INV-1792000000000008","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 9 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000008"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000009","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 10 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000009"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":2}],"invoice_no":"INV-1792000000000010","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 11 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000010"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":3}],"invoice_no":"INV-1792000000000011","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 12 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000011"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-1792000000000012","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 13 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000012"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":2}],"invoice_no":"INV-1792000000000013","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 14 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 2  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 0  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000013"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":3}],"invoice_no":"INV-1792000000000014","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 15 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000014"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-1792000000000015","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 16 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000015"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":2}],"invoice_no":"INV-1792000000000016","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 17 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000016"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":3}],"invoice_no":"INV-1792000000000017","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 18 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000017"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-1792000000000018","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 19 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000018"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":2}],"invoice_no":"INV-1792000000000019","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 20 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000019"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":3}],"invoice_no":"INV-1792000000000020","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-1792000000000021","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 22 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000021"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":2}],"invoice_no":"INV-1792000000000022","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 23 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000022"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":3}],"invoice_no":"INV-1792000000000023","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 24 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000023"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-1792000000000024","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 25 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000024"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":2}],"invoice_no":"INV-1792000000000025","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 26 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000025"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":3}],"invoice_no":"INV-1792000000000026","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 27 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000026"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-1792000000000027","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 28 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 2  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 1  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000027"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":2}],"invoice_no":"INV-1792000000000028","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 29 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000028"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":3}],"invoice_no":"INV-1792000000000029","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 30 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 97  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000029"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792000000000030","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 1 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 100  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 99  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000030"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-1792000000000031","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 2 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 98  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:43] testing.INFO: New stock: 96  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000031"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-1792000000000032","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 3 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 97  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:43] testing.INFO: New stock: 94  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000032"} 
[2026-10-25 09:10:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-1792000000000033","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:43] testing.INFO: Stock deduction for product: Médicament product 4 500mg  
[2026-10-25 09:10:43] testing.INFO: Old stock: 99  
[2026-10-25 09:10:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:43] testing.INFO: New stock: 98  
[2026-10-25 09:10:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000033"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":2}],"invoice_no":"INV-1792000000000034","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 5 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 98  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:44] testing.INFO: New stock: 96  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000034"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":3}],"invoice_no":"INV-1792000000000035","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 6 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 97  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:44] testing.INFO: New stock: 94  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000035"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-1792000000000036","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 7 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 1  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:44] testing.INFO: New stock: 0  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000036"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":2}],"invoice_no":"INV-1792000000000037","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 8 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 98  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:44] testing.INFO: New stock: 96  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000037"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":3}],"invoice_no":"INV-1792000000000038","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 9 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 97  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:10:44] testing.INFO: New stock: 94  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000038"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-1792000000000039","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 10 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 99  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:10:44] testing.INFO: New stock: 98  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000039"} 
[2026-10-25 09:10:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":2}],"invoice_no":"INV-1792000000000040","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:10:44] testing.INFO: Stock deduction for product: Médicament product 11 500mg  
[2026-10-25 09:10:44] testing.INFO: Old stock: 98  
[2026-10-25 09:10:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:10:44] testing.INFO: New stock: 96  
[2026-10-25 09:10:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792000000000040"} 
[2026-10-25 09:12:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabc849ab2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:08] testing.INFO: Old stock: 100  
[2026-10-25 09:12:08] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:08] testing.INFO: New stock: 96  
[2026-10-25 09:12:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabc849ab2"} 
[2026-10-25 09:12:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addabc88a1c3","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:12:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:08] testing.INFO: Old stock: 96  
[2026-10-25 09:12:08] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:12:08] testing.INFO: New stock: 65  
[2026-10-25 09:12:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabc88a1c3"} 
[2026-10-25 09:12:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabc9339d0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:09] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:09] testing.INFO: Old stock: 100  
[2026-10-25 09:12:09] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:09] testing.INFO: New stock: 96  
[2026-10-25 09:12:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabc9339d0"} 
[2026-10-25 09:12:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addabc9579e9","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:12:09] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:09] testing.INFO: Old stock: 96  
[2026-10-25 09:12:09] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:12:09] testing.INFO: New stock: 65  
[2026-10-25 09:12:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabc9579e9"} 
[2026-10-25 09:12:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabc9d8765","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:10] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:12:10] testing.INFO: Old stock: 100  
[2026-10-25 09:12:10] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:10] testing.INFO: New stock: 96  
[2026-10-25 09:12:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabc9d8765"} 
[2026-10-25 09:12:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addabca0fd6b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:12:10] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:12:10] testing.INFO: Old stock: 96  
[2026-10-25 09:12:10] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:12:10] testing.INFO: New stock: 65  
[2026-10-25 09:12:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabca0fd6b"} 
[2026-10-25 09:12:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabcb9a482","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:12:11] testing.INFO: Old stock: 100  
[2026-10-25 09:12:11] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:11] testing.INFO: New stock: 96  
[2026-10-25 09:12:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabcb9a482"} 
[2026-10-25 09:12:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addabcbb1f67","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:12:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:12:11] testing.INFO: Old stock: 96  
[2026-10-25 09:12:11] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:12:11] testing.INFO: New stock: 65  
[2026-10-25 09:12:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabcbb1f67"} 
[2026-10-25 09:12:14] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 09:12:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabd2674f6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:18] testing.INFO: Old stock: 200  
[2026-10-25 09:12:18] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:18] testing.INFO: New stock: 196  
[2026-10-25 09:12:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd2674f6"} 
[2026-10-25 09:12:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabd28d3e1","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:12:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:18] testing.INFO: Old stock: 196  
[2026-10-25 09:12:18] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:18] testing.INFO: New stock: 194  
[2026-10-25 09:12:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd28d3e1"} 
[2026-10-25 09:12:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addabd2aaa40","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 09:12:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addabd2c901f","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 09:12:18] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:18] testing.INFO: Old stock: 191  
[2026-10-25 09:12:18] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:18] testing.INFO: New stock: 190  
[2026-10-25 09:12:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd2c901f"} 
[2026-10-25 09:12:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabd57cf32","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:21] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:21] testing.INFO: Old stock: 200  
[2026-10-25 09:12:21] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:21] testing.INFO: New stock: 196  
[2026-10-25 09:12:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd57cf32"} 
[2026-10-25 09:12:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabd5a58e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:21] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:21] testing.INFO: Old stock: 196  
[2026-10-25 09:12:21] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:21] testing.INFO: New stock: 194  
[2026-10-25 09:12:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd5a58e0"} 
[2026-10-25 09:12:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabd65c4e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:12:22] testing.INFO: Old stock: 200  
[2026-10-25 09:12:22] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:22] testing.INFO: New stock: 196  
[2026-10-25 09:12:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd65c4e4"} 
[2026-10-25 09:12:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addabd7252b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:12:23] testing.INFO: Old stock: 196  
[2026-10-25 09:12:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:23] testing.INFO: New stock: 195  
[2026-10-25 09:12:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd7252b7"} 
[2026-10-25 09:12:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabd970a22","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:25] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:12:25] testing.INFO: Old stock: 200  
[2026-10-25 09:12:25] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:12:25] testing.INFO: New stock: 196  
[2026-10-25 09:12:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabd970a22"} 
[2026-10-25 09:12:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T08:42:25+02:00"}} 
[2026-10-25 09:12:26] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:12:26] testing.INFO: Old stock: 196  
[2026-10-25 09:12:26] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:26] testing.INFO: New stock: 195  
[2026-10-25 09:12:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 09:12:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addabdd343e2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:29] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:29] testing.INFO: Old stock: 10  
[2026-10-25 09:12:29] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:12:29] testing.INFO: New stock: 7  
[2026-10-25 09:12:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabdd343e2"} 
[2026-10-25 09:12:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6addabddaeb3f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:29] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:29] testing.INFO: Old stock: 10  
[2026-10-25 09:12:29] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:29] testing.INFO: New stock: 8  
[2026-10-25 09:12:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabddaeb3f"} 
[2026-10-25 09:12:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addabde28ab9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:30] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6addabde88b65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6addabdee1d6b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabdf493b3","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 09:12:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabdf9a4f8","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 09:12:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabe07ea67","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:32] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:32] testing.INFO: Old stock: 10  
[2026-10-25 09:12:32] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:32] testing.INFO: New stock: 8  
[2026-10-25 09:12:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabe07ea67"} 
[2026-10-25 09:12:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabe13308d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:33] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:33] testing.INFO: Old stock: 10  
[2026-10-25 09:12:33] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:33] testing.INFO: New stock: 8  
[2026-10-25 09:12:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabe13308d"} 
[2026-10-25 09:12:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabe1d89f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:34] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:12:34] testing.INFO: Old stock: 10  
[2026-10-25 09:12:34] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:34] testing.INFO: New stock: 8  
[2026-10-25 09:12:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabe1d89f3"} 
[2026-10-25 09:12:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabe27310c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:34] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:12:34] testing.INFO: Old stock: 3  
[2026-10-25 09:12:34] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:34] testing.INFO: New stock: 1  
[2026-10-25 09:12:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabe27310c"} 
[2026-10-25 09:12:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addabe37fe81","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:35] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 09:12:35] testing.INFO: Old stock: 10  
[2026-10-25 09:12:35] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:35] testing.INFO: New stock: 8  
[2026-10-25 09:12:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabe37fe81"} 
[2026-10-25 09:12:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:36] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:12:36] testing.INFO: Old stock: 10  
[2026-10-25 09:12:36] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:36] testing.INFO: New stock: 8  
[2026-10-25 09:12:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:12:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:12:36] testing.INFO: Old stock: 10  
[2026-10-25 09:12:36] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:36] testing.INFO: New stock: 9  
[2026-10-25 09:12:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:12:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T07:12:00+02:00"}} 
[2026-10-25 09:12:37] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:12:37] testing.INFO: Old stock: 10  
[2026-10-25 09:12:37] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:37] testing.INFO: New stock: 9  
[2026-10-25 09:12:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:12:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T09:12:37+02:00"}} 
[2026-10-25 09:12:37] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:12:37] testing.INFO: Old stock: 10  
[2026-10-25 09:12:37] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:37] testing.INFO: New stock: 9  
[2026-10-25 09:12:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:12:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:12:37+02:00"}} 
[2026-10-25 09:12:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:12:38+02:00"}} 
[2026-10-25 09:12:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:12:38+02:00"}} 
[2026-10-25 09:12:38] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 09:12:38] testing.INFO: Old stock: 5  
[2026-10-25 09:12:38] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:12:38] testing.INFO: New stock: 2  
[2026-10-25 09:12:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:12:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:12:39+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 09:12:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T06:12:39+02:00"}} 
[2026-10-25 09:12:39] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 09:12:39] testing.INFO: Old stock: 10  
[2026-10-25 09:12:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:39] testing.INFO: New stock: 9  
[2026-10-25 09:12:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:12:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addabf12bf8e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:49] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 09:12:49] testing.INFO: Old stock: 16  
[2026-10-25 09:12:49] testing.INFO: Quantity deducted: 6  
[2026-10-25 09:12:49] testing.INFO: New stock: 10  
[2026-10-25 09:12:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabf12bf8e"} 
[2026-10-25 09:12:52] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 09:12:52] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 09:12:52] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 09:12:52"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-25 09:12:52] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 09:12:55] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 09:12:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addabf90a84b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addabf930955","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:57] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 09:12:57] testing.INFO: Old stock: 2  
[2026-10-25 09:12:57] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:12:57] testing.INFO: New stock: 1  
[2026-10-25 09:12:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabf930955"} 
[2026-10-25 09:12:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:12:59] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 09:12:59] testing.INFO: Old stock: 35  
[2026-10-25 09:12:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:12:59] testing.INFO: New stock: 33  
[2026-10-25 09:12:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 09:13:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addabfc4dc25","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:00] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 09:13:00] testing.INFO: Old stock: 13  
[2026-10-25 09:13:00] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:13:00] testing.INFO: New stock: 8  
[2026-10-25 09:13:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabfc4dc25"} 
[2026-10-25 09:13:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addabfc81ddf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:00] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 09:13:00] testing.INFO: Old stock: 8  
[2026-10-25 09:13:00] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:13:00] testing.INFO: New stock: 4  
[2026-10-25 09:13:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabfc81ddf"} 
[2026-10-25 09:13:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addabfd79621","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:01] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 09:13:01] testing.INFO: Old stock: 8  
[2026-10-25 09:13:01] testing.INFO: Quantity deducted: 6  
[2026-10-25 09:13:01] testing.INFO: New stock: 2  
[2026-10-25 09:13:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addabfd79621"} 
[2026-10-25 09:13:02] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 09:13:02] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 09:13:03] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 09:13:03"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-25 09:13:03] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 09:13:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:13:14] testing.INFO: Old stock: 10  
[2026-10-25 09:13:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:14] testing.INFO: New stock: 9  
[2026-10-25 09:13:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 09:13:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:13:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:13:14] testing.INFO: Old stock: 10  
[2026-10-25 09:13:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:14] testing.INFO: New stock: 9  
[2026-10-25 09:13:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 09:13:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:16] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:13:16] testing.INFO: Old stock: 10  
[2026-10-25 09:13:16] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:16] testing.INFO: New stock: 9  
[2026-10-25 09:13:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 09:13:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:16] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:13:16] testing.INFO: Old stock: 10  
[2026-10-25 09:13:16] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:16] testing.INFO: New stock: 9  
[2026-10-25 09:13:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 09:13:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac0d0e0ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:13:17] testing.INFO: Old stock: 100  
[2026-10-25 09:13:17] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:17] testing.INFO: New stock: 99  
[2026-10-25 09:13:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac0d0e0ea"} 
[2026-10-25 09:13:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac0d3423e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:13:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:13:17] testing.INFO: Old stock: 99  
[2026-10-25 09:13:17] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:13:17] testing.INFO: New stock: 97  
[2026-10-25 09:13:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac0d3423e"} 
[2026-10-25 09:13:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addac0d4e3a9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 09:13:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac1241e0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:13:22] testing.INFO: Old stock: 50  
[2026-10-25 09:13:22] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:13:22] testing.INFO: New stock: 48  
[2026-10-25 09:13:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1241e0d"} 
[2026-10-25 09:13:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addac1289a54","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:13:22] testing.INFO: Old stock: 48  
[2026-10-25 09:13:22] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:13:22] testing.INFO: New stock: 45  
[2026-10-25 09:13:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1289a54"} 
[2026-10-25 09:13:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac15135c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:25] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:13:25] testing.INFO: Old stock: 20  
[2026-10-25 09:13:25] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:13:25] testing.INFO: New stock: 18  
[2026-10-25 09:13:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac15135c5"} 
[2026-10-25 09:13:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac185d485","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:28] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:13:28] testing.INFO: Old stock: 50  
[2026-10-25 09:13:28] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:28] testing.INFO: New stock: 49  
[2026-10-25 09:13:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac185d485"} 
[2026-10-25 09:13:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addac188b063","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:28] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:13:28] testing.INFO: Old stock: 50  
[2026-10-25 09:13:28] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:28] testing.INFO: New stock: 49  
[2026-10-25 09:13:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac188b063"} 
[2026-10-25 09:13:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addac18a304a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:28] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 09:13:28] testing.INFO: Old stock: 50  
[2026-10-25 09:13:28] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:28] testing.INFO: New stock: 49  
[2026-10-25 09:13:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac18a304a"} 
[2026-10-25 09:13:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addac18c8bb2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:28] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 09:13:28] testing.INFO: Old stock: 50  
[2026-10-25 09:13:28] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:28] testing.INFO: New stock: 49  
[2026-10-25 09:13:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac18c8bb2"} 
[2026-10-25 09:13:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addac18ea514","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 09:13:29] testing.INFO: Old stock: 1  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 0  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac18ea514"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addac191534d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 09:13:29] testing.INFO: Old stock: 50  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 49  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac191534d"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addac193470a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 09:13:29] testing.INFO: Old stock: 50  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 49  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac193470a"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addac19547ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 09:13:29] testing.INFO: Old stock: 50  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 49  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac19547ce"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addac1975564","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 09:13:29] testing.INFO: Old stock: 50  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 49  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1975564"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addac1994eb0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 09:13:29] testing.INFO: Old stock: 1  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 0  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1994eb0"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addac19b3ee7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 09:13:29] testing.INFO: Old stock: 50  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 49  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac19b3ee7"} 
[2026-10-25 09:13:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addac19d2d20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:29] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 09:13:29] testing.INFO: Old stock: 50  
[2026-10-25 09:13:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:29] testing.INFO: New stock: 49  
[2026-10-25 09:13:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac19d2d20"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addac19f32f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 09:13:30] testing.INFO: Old stock: 50  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 49  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac19f32f8"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addac1a25899","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 09:13:30] testing.INFO: Old stock: 50  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 49  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1a25899"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addac1a4afc8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 09:13:30] testing.INFO: Old stock: 1  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 0  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1a4afc8"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addac1a6fad5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 09:13:30] testing.INFO: Old stock: 50  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 49  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1a6fad5"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addac1a926ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 09:13:30] testing.INFO: Old stock: 50  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 49  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1a926ce"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addac1ab3fda","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 09:13:30] testing.INFO: Old stock: 50  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 49  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1ab3fda"} 
[2026-10-25 09:13:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addac1ad482f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:30] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 09:13:30] testing.INFO: Old stock: 50  
[2026-10-25 09:13:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:30] testing.INFO: New stock: 49  
[2026-10-25 09:13:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1ad482f"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addac1b011f1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 09:13:31] testing.INFO: Old stock: 1  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 0  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1b011f1"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addac1b20156","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 09:13:31] testing.INFO: Old stock: 50  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 49  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1b20156"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addac1b3f035","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 09:13:31] testing.INFO: Old stock: 50  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 49  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1b3f035"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addac1b5d7f5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 09:13:31] testing.INFO: Old stock: 50  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 49  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1b5d7f5"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addac1b7ebc4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 09:13:31] testing.INFO: Old stock: 50  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 49  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1b7ebc4"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addac1b9e02a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 09:13:31] testing.INFO: Old stock: 1  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 0  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1b9e02a"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addac1bbb2e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 09:13:31] testing.INFO: Old stock: 50  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 49  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1bbb2e4"} 
[2026-10-25 09:13:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addac1bda601","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:31] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 09:13:31] testing.INFO: Old stock: 50  
[2026-10-25 09:13:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:31] testing.INFO: New stock: 49  
[2026-10-25 09:13:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1bda601"} 
[2026-10-25 09:13:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addac1c039a3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:32] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 09:13:32] testing.INFO: Old stock: 50  
[2026-10-25 09:13:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:32] testing.INFO: New stock: 49  
[2026-10-25 09:13:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1c039a3"} 
[2026-10-25 09:13:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addac1c21ad8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:32] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 09:13:32] testing.INFO: Old stock: 50  
[2026-10-25 09:13:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:32] testing.INFO: New stock: 49  
[2026-10-25 09:13:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1c21ad8"} 
[2026-10-25 09:13:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addac1c41391","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:32] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 09:13:32] testing.INFO: Old stock: 1  
[2026-10-25 09:13:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:32] testing.INFO: New stock: 0  
[2026-10-25 09:13:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac1c41391"} 
[2026-10-25 09:13:38] testing.ERROR: Class "IlluminateSupportStr" not found (View: C:\Users\Solomon\Downloads\area25v1\area25updated\area25V2\resources\views\pdf\reports\registers.blade.php) {"userId":2,"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Class \"IlluminateSupportStr\" not found (View: C:\\Users\\Solomon\\Downloads\\area25v1\\area25updated\\area25V2\\resources\\views\\pdf\\reports\\registers.blade.php) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/storage/framework/views/d564ba37b3196a62a37985939718b872.php:53)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(59): Illuminate/View/Engines/CompilerEngine->handleViewException(Object(Error), 1)
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Solomo...', Array)
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Solomo...', Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Services/ReportPdf.php(31): Illuminate/View/View->render()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Services/ReportPdf.php(50): App/Services/ReportPdf::render('pdf.reports.reg...', Array, 'landscape')
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/Concerns/ExportsPdf.php(30): App/Services/ReportPdf::download('pdf.reports.reg...', Array, 'Register-Report...', 'landscape')
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/RegisterReportController.php(96): App/Http/Controllers/RegisterReportController->pdfResponse('pdf.reports.reg...', Array, Array, 'Register-Report...')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_register_r...')
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/SecurityHeaders.php(20): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/SecurityHeaders->handle(Object(Illuminate/Http/Request), Object(Closure))
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/reports/regist...', Array, Array, Array, Array)
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/ReportPdfTest.php(64): Illuminate/Foundation/Testing/TestCase->get('/reports/regist...')
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/ReportPdfTest->test_every_report_downloads_as_a_pdf()
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#68 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/ReportPdfTest))
#69 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#70 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#71 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#72 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#73 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#74 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#75 {main}

[previous exception] [object] (Error(code: 0): Class \"IlluminateSupportStr\" not found at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/storage/framework/views/d564ba37b3196a62a37985939718b872.php:53)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(123): require()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php(124): Illuminate/Filesystem/Filesystem::Illuminate/Filesystem/{closure}()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(57): Illuminate/Filesystem/Filesystem->getRequire('C://Users//Solomo...', Array)
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(76): Illuminate/View/Engines/PhpEngine->evaluatePath('C://Users//Solomo...', Array)
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/View.php(208): Illuminate/View/Engines/CompilerEngine->get('C://Users//Solomo...', Array)
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/View.php(191): Illuminate/View/View->getContents()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/View.php(160): Illuminate/View/View->renderContents()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Services/ReportPdf.php(31): Illuminate/View/View->render()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Services/ReportPdf.php(50): App/Services/ReportPdf::render('pdf.reports.reg...', Array, 'landscape')
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/Concerns/ExportsPdf.php(30): App/Services/ReportPdf::download('pdf.reports.reg...', Array, 'Register-Report...', 'landscape')
#10 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Controllers/RegisterReportController.php(96): App/Http/Controllers/RegisterReportController->pdfResponse('pdf.reports.reg...', Array, Array, 'Register-Report...')
#11 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App/Http/Controllers/RegisterReportController->index(Object(Illuminate/Http/Request))
#12 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(43): Illuminate/Routing/Controller->callAction('index', Array)
#13 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(265): Illuminate/Routing/ControllerDispatcher->dispatch(Object(Illuminate/Routing/Route), Object(App/Http/Controllers/RegisterReportController), 'index')
#14 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Route.php(211): Illuminate/Routing/Route->runController()
#15 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate/Routing/Route->run()
#16 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Routing/Router->Illuminate/Routing/{closure}(Object(Illuminate/Http/Request))
#17 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/CheckPermission.php(35): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#18 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/CheckPermission->handle(Object(Illuminate/Http/Request), Object(Closure), 'view_register_r...')
#19 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/app/Http/Middleware/SecurityHeaders.php(20): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#20 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App/Http/Middleware/SecurityHeaders->handle(Object(Illuminate/Http/Request), Object(Closure))
#21 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#22 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Routing/Middleware/SubstituteBindings->handle(Object(Illuminate/Http/Request), Object(Closure))
#23 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(63): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#24 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Auth/Middleware/Authenticate->handle(Object(Illuminate/Http/Request), Object(Closure))
#25 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#26 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/VerifyCsrfToken->handle(Object(Illuminate/Http/Request), Object(Closure))
#27 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#28 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/View/Middleware/ShareErrorsFromSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#29 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#30 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate/Session/Middleware/StartSession->handleStatefulRequest(Object(Illuminate/Http/Request), Object(Illuminate/Session/Store), Object(Closure))
#31 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Session/Middleware/StartSession->handle(Object(Illuminate/Http/Request), Object(Closure))
#32 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#33 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse->handle(Object(Illuminate/Http/Request), Object(Closure))
#34 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#35 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Cookie/Middleware/EncryptCookies->handle(Object(Illuminate/Http/Request), Object(Closure))
#36 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#37 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#38 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate/Routing/Router->runRouteWithinStack(Object(Illuminate/Routing/Route), Object(Illuminate/Http/Request))
#39 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate/Routing/Router->runRoute(Object(Illuminate/Http/Request), Object(Illuminate/Routing/Route))
#40 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate/Routing/Router->dispatchToRoute(Object(Illuminate/Http/Request))
#41 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate/Routing/Router->dispatch(Object(Illuminate/Http/Request))
#42 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate/Foundation/Http/Kernel->Illuminate/Foundation/Http/{closure}(Object(Illuminate/Http/Request))
#43 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#44 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#45 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull->handle(Object(Illuminate/Http/Request), Object(Closure))
#46 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#47 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate/Foundation/Http/Middleware/TransformsRequest->handle(Object(Illuminate/Http/Request), Object(Closure))
#48 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/TrimStrings->handle(Object(Illuminate/Http/Request), Object(Closure))
#49 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#50 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePostSize->handle(Object(Illuminate/Http/Request), Object(Closure))
#51 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#52 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance->handle(Object(Illuminate/Http/Request), Object(Closure))
#53 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#54 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/HandleCors->handle(Object(Illuminate/Http/Request), Object(Closure))
#55 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#56 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/TrustProxies->handle(Object(Illuminate/Http/Request), Object(Closure))
#57 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#58 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks->handle(Object(Illuminate/Http/Request), Object(Closure))
#59 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#60 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate/Http/Middleware/ValidatePathEncoding->handle(Object(Illuminate/Http/Request), Object(Closure))
#61 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate/Pipeline/Pipeline->Illuminate/Pipeline/{closure}(Object(Illuminate/Http/Request))
#62 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate/Pipeline/Pipeline->then(Object(Closure))
#63 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate/Foundation/Http/Kernel->sendRequestThroughRouter(Object(Illuminate/Http/Request))
#64 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(607): Illuminate/Foundation/Http/Kernel->handle(Object(Illuminate/Http/Request))
#65 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/laravel/framework/src/Illuminate/Foundation/Testing/Concerns/MakesHttpRequests.php(368): Illuminate/Foundation/Testing/TestCase->call('GET', '/reports/regist...', Array, Array, Array, Array)
#66 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/ReportPdfTest.php(64): Illuminate/Foundation/Testing/TestCase->get('/reports/regist...')
#67 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/ReportPdfTest->test_every_report_downloads_as_a_pdf()
#68 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#69 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#70 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/ReportPdfTest))
#71 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#72 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#73 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#74 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#75 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#76 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#77 {main}
"} 
[2026-10-25 09:13:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac2ce7d78","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2ce7d78"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addac2d20543","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2d20543"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addac2d3da22","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2d3da22"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addac2d60e14","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2d60e14"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addac2d7e6de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 09:13:49] testing.INFO: Old stock: 1  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 0  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2d7e6de"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addac2d9d6a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2d9d6a4"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addac2dbc036","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2dbc036"} 
[2026-10-25 09:13:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addac2ddc2f4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:49] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 09:13:49] testing.INFO: Old stock: 50  
[2026-10-25 09:13:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:49] testing.INFO: New stock: 49  
[2026-10-25 09:13:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2ddc2f4"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addac2e05be8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 09:13:50] testing.INFO: Old stock: 50  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 49  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2e05be8"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addac2e21cda","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 09:13:50] testing.INFO: Old stock: 1  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 0  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2e21cda"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addac2e40dc2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 09:13:50] testing.INFO: Old stock: 50  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 49  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2e40dc2"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addac2e5f9d5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 09:13:50] testing.INFO: Old stock: 50  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 49  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2e5f9d5"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addac2e80b90","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 09:13:50] testing.INFO: Old stock: 50  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 49  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2e80b90"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addac2e9fe18","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 09:13:50] testing.INFO: Old stock: 50  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 49  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2e9fe18"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addac2ebce1d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 09:13:50] testing.INFO: Old stock: 1  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 0  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2ebce1d"} 
[2026-10-25 09:13:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addac2eda35c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:50] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 09:13:50] testing.INFO: Old stock: 50  
[2026-10-25 09:13:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:50] testing.INFO: New stock: 49  
[2026-10-25 09:13:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2eda35c"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addac2ef41bd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2ef41bd"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addac2f1dcdc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2f1dcdc"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addac2f3a2ac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2f3a2ac"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addac2f55152","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 09:13:51] testing.INFO: Old stock: 1  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 0  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2f55152"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addac2f71d72","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2f71d72"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addac2f8f9c9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2f8f9c9"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addac2fadcd1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2fadcd1"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addac2fcc1b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:51] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 09:13:51] testing.INFO: Old stock: 50  
[2026-10-25 09:13:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:51] testing.INFO: New stock: 49  
[2026-10-25 09:13:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2fcc1b7"} 
[2026-10-25 09:13:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addac2fead2d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:52] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 09:13:52] testing.INFO: Old stock: 1  
[2026-10-25 09:13:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:52] testing.INFO: New stock: 0  
[2026-10-25 09:13:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac2fead2d"} 
[2026-10-25 09:13:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addac3011d38","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:52] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 09:13:52] testing.INFO: Old stock: 50  
[2026-10-25 09:13:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:52] testing.INFO: New stock: 49  
[2026-10-25 09:13:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac3011d38"} 
[2026-10-25 09:13:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addac302b3f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:52] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 09:13:52] testing.INFO: Old stock: 50  
[2026-10-25 09:13:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:52] testing.INFO: New stock: 49  
[2026-10-25 09:13:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac302b3f8"} 
[2026-10-25 09:13:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addac3047d0b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:52] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 09:13:52] testing.INFO: Old stock: 50  
[2026-10-25 09:13:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:52] testing.INFO: New stock: 49  
[2026-10-25 09:13:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac3047d0b"} 
[2026-10-25 09:13:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addac3066c62","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:52] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 09:13:52] testing.INFO: Old stock: 50  
[2026-10-25 09:13:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:52] testing.INFO: New stock: 49  
[2026-10-25 09:13:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac3066c62"} 
[2026-10-25 09:13:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addac30851c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:52] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 09:13:52] testing.INFO: Old stock: 1  
[2026-10-25 09:13:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:52] testing.INFO: New stock: 0  
[2026-10-25 09:13:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac30851c6"} 
[2026-10-25 09:13:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac36959b4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:58] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:13:58] testing.INFO: Old stock: 50  
[2026-10-25 09:13:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:58] testing.INFO: New stock: 49  
[2026-10-25 09:13:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac36959b4"} 
[2026-10-25 09:13:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addac36bf604","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:13:58] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:13:58] testing.INFO: Old stock: 50  
[2026-10-25 09:13:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:13:58] testing.INFO: New stock: 49  
[2026-10-25 09:13:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac36bf604"} 
[2026-10-25 09:14:02] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 09:14:02"}  
[2026-10-25 09:14:02] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 09:14:02] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 09:14:02] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 09:14:02] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 09:14:02] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 09:14:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addac3adf81a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:03] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:14:03] testing.INFO: Old stock: 70  
[2026-10-25 09:14:03] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:14:03] testing.INFO: New stock: 65  
[2026-10-25 09:14:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac3adf81a"} 
[2026-10-25 09:14:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 09:14:03] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:14:03] testing.INFO: Old stock: 62  
[2026-10-25 09:14:03] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:03] testing.INFO: New stock: 60  
[2026-10-25 09:14:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 09:14:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac3c720af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:04] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:14:04] testing.INFO: Old stock: 59  
[2026-10-25 09:14:04] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:04] testing.INFO: New stock: 55  
[2026-10-25 09:14:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac3c720af"} 
[2026-10-25 09:14:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac3fce48c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:07] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:14:07] testing.INFO: Old stock: 10  
[2026-10-25 09:14:07] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:07] testing.INFO: New stock: 6  
[2026-10-25 09:14:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac3fce48c"} 
[2026-10-25 09:14:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addac404d221","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:14:08] testing.INFO: Old stock: 10  
[2026-10-25 09:14:08] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:14:08] testing.INFO: New stock: 5  
[2026-10-25 09:14:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac404d221"} 
[2026-10-25 09:14:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac40ecf73","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:09] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 09:14:09] testing.INFO: Old stock: 10  
[2026-10-25 09:14:09] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:09] testing.INFO: New stock: 6  
[2026-10-25 09:14:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac40ecf73"} 
[2026-10-25 09:14:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac41c432c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:09] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 09:14:09] testing.INFO: Old stock: 5  
[2026-10-25 09:14:09] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:09] testing.INFO: New stock: 1  
[2026-10-25 09:14:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac41c432c"} 
[2026-10-25 09:14:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addac4272846","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:10] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 09:14:10] testing.INFO: Old stock: 10  
[2026-10-25 09:14:10] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:14:10] testing.INFO: New stock: 5  
[2026-10-25 09:14:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac4272846"} 
[2026-10-25 09:14:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addac4330b63","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:11] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 09:14:11] testing.INFO: Old stock: 12  
[2026-10-25 09:14:11] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:14:11] testing.INFO: New stock: 7  
[2026-10-25 09:14:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac4330b63"} 
[2026-10-25 09:14:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addac43a1c81","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:11] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 09:14:11] testing.INFO: Old stock: 12  
[2026-10-25 09:14:11] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:14:11] testing.INFO: New stock: 7  
[2026-10-25 09:14:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac43a1c81"} 
[2026-10-25 09:14:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac4972a19","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:14:17] testing.INFO: Old stock: 10  
[2026-10-25 09:14:17] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:17] testing.INFO: New stock: 8  
[2026-10-25 09:14:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac4972a19"} 
[2026-10-25 09:14:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac4c3212c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:14:20] testing.INFO: Old stock: 10  
[2026-10-25 09:14:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:20] testing.INFO: New stock: 8  
[2026-10-25 09:14:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac4c3212c"} 
[2026-10-25 09:14:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac4ceab68","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:14:20] testing.INFO: Old stock: 10  
[2026-10-25 09:14:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:20] testing.INFO: New stock: 8  
[2026-10-25 09:14:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac4ceab68"} 
[2026-10-25 09:14:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac4d9433b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:21] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:14:21] testing.INFO: Old stock: 10  
[2026-10-25 09:14:21] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:21] testing.INFO: New stock: 8  
[2026-10-25 09:14:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac4d9433b"} 
[2026-10-25 09:14:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac65e3a28","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:46] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:14:46] testing.INFO: Old stock: 100  
[2026-10-25 09:14:46] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:46] testing.INFO: New stock: 96  
[2026-10-25 09:14:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac65e3a28"} 
[2026-10-25 09:14:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addac663555c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:14:46] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:14:46] testing.INFO: Old stock: 96  
[2026-10-25 09:14:46] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:14:46] testing.INFO: New stock: 65  
[2026-10-25 09:14:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac663555c"} 
[2026-10-25 09:14:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac66e702a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:14:47] testing.INFO: Old stock: 100  
[2026-10-25 09:14:47] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:47] testing.INFO: New stock: 96  
[2026-10-25 09:14:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac66e702a"} 
[2026-10-25 09:14:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addac671ba10","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:14:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:14:47] testing.INFO: Old stock: 96  
[2026-10-25 09:14:47] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:14:47] testing.INFO: New stock: 65  
[2026-10-25 09:14:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac671ba10"} 
[2026-10-25 09:14:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac6797364","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:14:47] testing.INFO: Old stock: 100  
[2026-10-25 09:14:47] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:47] testing.INFO: New stock: 96  
[2026-10-25 09:14:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac6797364"} 
[2026-10-25 09:14:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addac67bfa6b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:14:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:14:47] testing.INFO: Old stock: 96  
[2026-10-25 09:14:47] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:14:47] testing.INFO: New stock: 65  
[2026-10-25 09:14:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac67bfa6b"} 
[2026-10-25 09:14:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac6943533","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:49] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:14:49] testing.INFO: Old stock: 100  
[2026-10-25 09:14:49] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:49] testing.INFO: New stock: 96  
[2026-10-25 09:14:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac6943533"} 
[2026-10-25 09:14:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addac69698d5","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:14:49] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:14:49] testing.INFO: Old stock: 96  
[2026-10-25 09:14:49] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:14:49] testing.INFO: New stock: 65  
[2026-10-25 09:14:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac69698d5"} 
[2026-10-25 09:14:52] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 09:14:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac70844ba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:56] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:14:56] testing.INFO: Old stock: 200  
[2026-10-25 09:14:56] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:56] testing.INFO: New stock: 196  
[2026-10-25 09:14:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac70844ba"} 
[2026-10-25 09:14:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac70ae79d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:14:56] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:14:56] testing.INFO: Old stock: 196  
[2026-10-25 09:14:56] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:56] testing.INFO: New stock: 194  
[2026-10-25 09:14:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac70ae79d"} 
[2026-10-25 09:14:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addac70cb86f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 09:14:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac70ebd79","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 09:14:57] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:14:57] testing.INFO: Old stock: 191  
[2026-10-25 09:14:57] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:14:57] testing.INFO: New stock: 190  
[2026-10-25 09:14:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac70ebd79"} 
[2026-10-25 09:14:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac73968bf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:59] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:14:59] testing.INFO: Old stock: 200  
[2026-10-25 09:14:59] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:14:59] testing.INFO: New stock: 196  
[2026-10-25 09:14:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac73968bf"} 
[2026-10-25 09:14:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac73c10f9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:14:59] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:14:59] testing.INFO: Old stock: 196  
[2026-10-25 09:14:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:14:59] testing.INFO: New stock: 194  
[2026-10-25 09:14:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac73c10f9"} 
[2026-10-25 09:15:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac7496634","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:00] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:15:00] testing.INFO: Old stock: 200  
[2026-10-25 09:15:00] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:15:00] testing.INFO: New stock: 196  
[2026-10-25 09:15:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac7496634"} 
[2026-10-25 09:15:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac759dc14","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:01] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:15:01] testing.INFO: Old stock: 196  
[2026-10-25 09:15:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:01] testing.INFO: New stock: 195  
[2026-10-25 09:15:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac759dc14"} 
[2026-10-25 09:15:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac785df15","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:04] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:15:04] testing.INFO: Old stock: 200  
[2026-10-25 09:15:04] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:15:04] testing.INFO: New stock: 196  
[2026-10-25 09:15:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac785df15"} 
[2026-10-25 09:15:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T08:45:04+02:00"}} 
[2026-10-25 09:15:05] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:15:05] testing.INFO: Old stock: 196  
[2026-10-25 09:15:05] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:05] testing.INFO: New stock: 195  
[2026-10-25 09:15:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 09:15:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addac7c58bf3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:15:08] testing.INFO: Old stock: 10  
[2026-10-25 09:15:08] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:15:08] testing.INFO: New stock: 7  
[2026-10-25 09:15:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac7c58bf3"} 
[2026-10-25 09:15:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6addac7ccb51a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:08] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:15:08] testing.INFO: Old stock: 10  
[2026-10-25 09:15:08] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:08] testing.INFO: New stock: 8  
[2026-10-25 09:15:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac7ccb51a"} 
[2026-10-25 09:15:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addac7d49443","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:09] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6addac7da87f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6addac7e0b981","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac7e6a52a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 09:15:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac7ede1b0","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 09:15:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac7fd3cb5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:11] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:15:11] testing.INFO: Old stock: 10  
[2026-10-25 09:15:11] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:11] testing.INFO: New stock: 8  
[2026-10-25 09:15:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac7fd3cb5"} 
[2026-10-25 09:15:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac809033a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:15:12] testing.INFO: Old stock: 10  
[2026-10-25 09:15:12] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:12] testing.INFO: New stock: 8  
[2026-10-25 09:15:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac809033a"} 
[2026-10-25 09:15:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac8145db5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:15:13] testing.INFO: Old stock: 10  
[2026-10-25 09:15:13] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:13] testing.INFO: New stock: 8  
[2026-10-25 09:15:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac8145db5"} 
[2026-10-25 09:15:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac81dbd69","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:14] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:15:14] testing.INFO: Old stock: 3  
[2026-10-25 09:15:14] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:14] testing.INFO: New stock: 1  
[2026-10-25 09:15:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac81dbd69"} 
[2026-10-25 09:15:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addac830b288","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:15] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 09:15:15] testing.INFO: Old stock: 10  
[2026-10-25 09:15:15] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:15] testing.INFO: New stock: 8  
[2026-10-25 09:15:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac830b288"} 
[2026-10-25 09:15:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:15:15] testing.INFO: Old stock: 10  
[2026-10-25 09:15:15] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:15] testing.INFO: New stock: 8  
[2026-10-25 09:15:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:15:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:16] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:15:16] testing.INFO: Old stock: 10  
[2026-10-25 09:15:16] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:16] testing.INFO: New stock: 9  
[2026-10-25 09:15:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:15:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T07:15:00+02:00"}} 
[2026-10-25 09:15:16] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:15:16] testing.INFO: Old stock: 10  
[2026-10-25 09:15:16] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:16] testing.INFO: New stock: 9  
[2026-10-25 09:15:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:15:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T09:15:17+02:00"}} 
[2026-10-25 09:15:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:15:17] testing.INFO: Old stock: 10  
[2026-10-25 09:15:17] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:17] testing.INFO: New stock: 9  
[2026-10-25 09:15:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:15:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:15:17+02:00"}} 
[2026-10-25 09:15:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:15:18+02:00"}} 
[2026-10-25 09:15:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:15:18+02:00"}} 
[2026-10-25 09:15:18] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 09:15:18] testing.INFO: Old stock: 5  
[2026-10-25 09:15:18] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:15:18] testing.INFO: New stock: 2  
[2026-10-25 09:15:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:15:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:15:19+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 09:15:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T06:15:19+02:00"}} 
[2026-10-25 09:15:19] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 09:15:19] testing.INFO: Old stock: 10  
[2026-10-25 09:15:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:19] testing.INFO: New stock: 9  
[2026-10-25 09:15:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:15:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addac9135138","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:29] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 09:15:29] testing.INFO: Old stock: 16  
[2026-10-25 09:15:29] testing.INFO: Quantity deducted: 6  
[2026-10-25 09:15:29] testing.INFO: New stock: 10  
[2026-10-25 09:15:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac9135138"} 
[2026-10-25 09:15:33] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 09:15:33] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 09:15:33] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 09:15:33"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-25 09:15:33] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 09:15:36] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 09:15:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac99eb4dd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addac9a1caa5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:38] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 09:15:38] testing.INFO: Old stock: 2  
[2026-10-25 09:15:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:38] testing.INFO: New stock: 1  
[2026-10-25 09:15:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac9a1caa5"} 
[2026-10-25 09:15:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:40] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 09:15:40] testing.INFO: Old stock: 35  
[2026-10-25 09:15:40] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:40] testing.INFO: New stock: 33  
[2026-10-25 09:15:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 09:15:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addac9d7ae08","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:41] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 09:15:41] testing.INFO: Old stock: 13  
[2026-10-25 09:15:41] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:15:41] testing.INFO: New stock: 8  
[2026-10-25 09:15:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac9d7ae08"} 
[2026-10-25 09:15:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addac9da56e2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:41] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 09:15:41] testing.INFO: Old stock: 8  
[2026-10-25 09:15:41] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:15:41] testing.INFO: New stock: 4  
[2026-10-25 09:15:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac9da56e2"} 
[2026-10-25 09:15:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addac9e995ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:42] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 09:15:42] testing.INFO: Old stock: 8  
[2026-10-25 09:15:42] testing.INFO: Quantity deducted: 6  
[2026-10-25 09:15:42] testing.INFO: New stock: 2  
[2026-10-25 09:15:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addac9e995ad"} 
[2026-10-25 09:15:44] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 09:15:44] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 09:15:44] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 09:15:44"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-25 09:15:44] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 09:15:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:56] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:15:56] testing.INFO: Old stock: 10  
[2026-10-25 09:15:56] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:56] testing.INFO: New stock: 9  
[2026-10-25 09:15:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 09:15:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:15:56] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:15:56] testing.INFO: Old stock: 10  
[2026-10-25 09:15:56] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:56] testing.INFO: New stock: 9  
[2026-10-25 09:15:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 09:15:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:58] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:15:58] testing.INFO: Old stock: 10  
[2026-10-25 09:15:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:58] testing.INFO: New stock: 9  
[2026-10-25 09:15:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 09:15:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:58] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:15:58] testing.INFO: Old stock: 10  
[2026-10-25 09:15:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:58] testing.INFO: New stock: 9  
[2026-10-25 09:15:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 09:15:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addacaed1de7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:15:58] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:15:58] testing.INFO: Old stock: 100  
[2026-10-25 09:15:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:15:58] testing.INFO: New stock: 99  
[2026-10-25 09:15:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacaed1de7"} 
[2026-10-25 09:15:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addacaf05462","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:15:59] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:15:59] testing.INFO: Old stock: 99  
[2026-10-25 09:15:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:15:59] testing.INFO: New stock: 97  
[2026-10-25 09:15:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacaf05462"} 
[2026-10-25 09:15:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addacaf2be58","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 09:16:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addacb43c330","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:04] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:16:04] testing.INFO: Old stock: 50  
[2026-10-25 09:16:04] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:16:04] testing.INFO: New stock: 48  
[2026-10-25 09:16:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacb43c330"} 
[2026-10-25 09:16:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addacb47ec47","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:04] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:16:04] testing.INFO: Old stock: 48  
[2026-10-25 09:16:04] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:16:04] testing.INFO: New stock: 45  
[2026-10-25 09:16:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacb47ec47"} 
[2026-10-25 09:16:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addacb74e136","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:07] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:16:07] testing.INFO: Old stock: 20  
[2026-10-25 09:16:07] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:16:07] testing.INFO: New stock: 18  
[2026-10-25 09:16:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacb74e136"} 
[2026-10-25 09:16:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addacbac44be","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:10] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:16:10] testing.INFO: Old stock: 50  
[2026-10-25 09:16:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:10] testing.INFO: New stock: 49  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbac44be"} 
[2026-10-25 09:16:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addacbb0e2a2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:11] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:16:11] testing.INFO: Old stock: 50  
[2026-10-25 09:16:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:11] testing.INFO: New stock: 49  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbb0e2a2"} 
[2026-10-25 09:16:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addacbb384ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:11] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 09:16:11] testing.INFO: Old stock: 50  
[2026-10-25 09:16:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:11] testing.INFO: New stock: 49  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbb384ea"} 
[2026-10-25 09:16:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addacbb616de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:11] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 09:16:11] testing.INFO: Old stock: 50  
[2026-10-25 09:16:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:11] testing.INFO: New stock: 49  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbb616de"} 
[2026-10-25 09:16:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addacbb8dc78","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:11] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 09:16:11] testing.INFO: Old stock: 1  
[2026-10-25 09:16:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:11] testing.INFO: New stock: 0  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbb8dc78"} 
[2026-10-25 09:16:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addacbbb175a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:11] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 09:16:11] testing.INFO: Old stock: 50  
[2026-10-25 09:16:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:11] testing.INFO: New stock: 49  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbbb175a"} 
[2026-10-25 09:16:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addacbbd14c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:11] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 09:16:11] testing.INFO: Old stock: 50  
[2026-10-25 09:16:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:11] testing.INFO: New stock: 49  
[2026-10-25 09:16:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbbd14c2"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addacbc010bb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 09:16:12] testing.INFO: Old stock: 50  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 49  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbc010bb"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addacbc2ab5b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 09:16:12] testing.INFO: Old stock: 50  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 49  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbc2ab5b"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addacbc4ee30","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 09:16:12] testing.INFO: Old stock: 1  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 0  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbc4ee30"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addacbc7500b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 09:16:12] testing.INFO: Old stock: 50  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 49  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbc7500b"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addacbc933c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 09:16:12] testing.INFO: Old stock: 50  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 49  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbc933c4"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addacbcb53c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 09:16:12] testing.INFO: Old stock: 50  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 49  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbcb53c5"} 
[2026-10-25 09:16:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addacbcd5e21","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:12] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 09:16:12] testing.INFO: Old stock: 50  
[2026-10-25 09:16:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:12] testing.INFO: New stock: 49  
[2026-10-25 09:16:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbcd5e21"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addacbd012f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 09:16:13] testing.INFO: Old stock: 1  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 0  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbd012f3"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addacbd21abf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 09:16:13] testing.INFO: Old stock: 50  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 49  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbd21abf"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addacbd3fe9b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 09:16:13] testing.INFO: Old stock: 50  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 49  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbd3fe9b"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addacbd60231","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 09:16:13] testing.INFO: Old stock: 50  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 49  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbd60231"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addacbd8145e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 09:16:13] testing.INFO: Old stock: 50  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 49  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbd8145e"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addacbda2c48","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 09:16:13] testing.INFO: Old stock: 1  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 0  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbda2c48"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addacbdc9f77","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:13] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 09:16:13] testing.INFO: Old stock: 50  
[2026-10-25 09:16:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:13] testing.INFO: New stock: 49  
[2026-10-25 09:16:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbdc9f77"} 
[2026-10-25 09:16:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addacbde8a59","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbde8a59"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addacbe15200","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbe15200"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addacbe33bf1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbe33bf1"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addacbe52b0c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 09:16:14] testing.INFO: Old stock: 1  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 0  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbe52b0c"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addacbe71d53","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbe71d53"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addacbe91e2e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbe91e2e"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addacbeaf286","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbeaf286"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addacbecef20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:14] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 09:16:14] testing.INFO: Old stock: 50  
[2026-10-25 09:16:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:14] testing.INFO: New stock: 49  
[2026-10-25 09:16:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbecef20"} 
[2026-10-25 09:16:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addacbeeb1f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:15] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 09:16:15] testing.INFO: Old stock: 1  
[2026-10-25 09:16:15] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:15] testing.INFO: New stock: 0  
[2026-10-25 09:16:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacbeeb1f8"} 
[2026-10-25 09:16:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addace392284","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:51] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:16:51] testing.INFO: Old stock: 50  
[2026-10-25 09:16:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:51] testing.INFO: New stock: 49  
[2026-10-25 09:16:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace392284"} 
[2026-10-25 09:16:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addace3c65a8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:51] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:16:51] testing.INFO: Old stock: 50  
[2026-10-25 09:16:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:51] testing.INFO: New stock: 49  
[2026-10-25 09:16:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace3c65a8"} 
[2026-10-25 09:16:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addace3eb074","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 09:16:52] testing.INFO: Old stock: 50  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 49  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace3eb074"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addace418cbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 09:16:52] testing.INFO: Old stock: 50  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 49  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace418cbe"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addace43a8c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 09:16:52] testing.INFO: Old stock: 1  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 0  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace43a8c5"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addace45b881","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 09:16:52] testing.INFO: Old stock: 50  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 49  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace45b881"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addace47ff1e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 09:16:52] testing.INFO: Old stock: 50  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 49  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace47ff1e"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addace4a4499","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 09:16:52] testing.INFO: Old stock: 50  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 49  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace4a4499"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addace4c63ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:52] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 09:16:52] testing.INFO: Old stock: 50  
[2026-10-25 09:16:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:52] testing.INFO: New stock: 49  
[2026-10-25 09:16:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace4c63ea"} 
[2026-10-25 09:16:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addace4e71d0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 09:16:53] testing.INFO: Old stock: 1  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 0  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace4e71d0"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addace50dcc7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 09:16:53] testing.INFO: Old stock: 50  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 49  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace50dcc7"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addace5322e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 09:16:53] testing.INFO: Old stock: 50  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 49  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace5322e4"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addace554f98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 09:16:53] testing.INFO: Old stock: 50  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 49  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace554f98"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addace5786cb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 09:16:53] testing.INFO: Old stock: 50  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 49  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace5786cb"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addace5978ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 09:16:53] testing.INFO: Old stock: 1  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 0  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace5978ad"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addace5b41de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 09:16:53] testing.INFO: Old stock: 50  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 49  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace5b41de"} 
[2026-10-25 09:16:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addace5d7d5f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:53] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 09:16:53] testing.INFO: Old stock: 50  
[2026-10-25 09:16:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:53] testing.INFO: New stock: 49  
[2026-10-25 09:16:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace5d7d5f"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addace6080da","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 09:16:54] testing.INFO: Old stock: 50  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 49  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace6080da"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addace62c399","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 09:16:54] testing.INFO: Old stock: 50  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 49  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace62c399"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addace6496ca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 09:16:54] testing.INFO: Old stock: 1  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 0  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace6496ca"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addace65e119","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 09:16:54] testing.INFO: Old stock: 50  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 49  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace65e119"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addace681c87","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 09:16:54] testing.INFO: Old stock: 50  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 49  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace681c87"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addace6a2ce4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 09:16:54] testing.INFO: Old stock: 50  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 49  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace6a2ce4"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addace6c328c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:54] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 09:16:54] testing.INFO: Old stock: 50  
[2026-10-25 09:16:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:54] testing.INFO: New stock: 49  
[2026-10-25 09:16:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace6c328c"} 
[2026-10-25 09:16:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addace6e53a8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:55] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 09:16:55] testing.INFO: Old stock: 1  
[2026-10-25 09:16:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:55] testing.INFO: New stock: 0  
[2026-10-25 09:16:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace6e53a8"} 
[2026-10-25 09:16:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addace70eebf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:55] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 09:16:55] testing.INFO: Old stock: 50  
[2026-10-25 09:16:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:55] testing.INFO: New stock: 49  
[2026-10-25 09:16:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace70eebf"} 
[2026-10-25 09:16:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addace732d01","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:55] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 09:16:55] testing.INFO: Old stock: 50  
[2026-10-25 09:16:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:55] testing.INFO: New stock: 49  
[2026-10-25 09:16:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace732d01"} 
[2026-10-25 09:16:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addace75db28","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:55] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 09:16:55] testing.INFO: Old stock: 50  
[2026-10-25 09:16:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:55] testing.INFO: New stock: 49  
[2026-10-25 09:16:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace75db28"} 
[2026-10-25 09:16:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addace78ccd1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:55] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 09:16:55] testing.INFO: Old stock: 50  
[2026-10-25 09:16:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:55] testing.INFO: New stock: 49  
[2026-10-25 09:16:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace78ccd1"} 
[2026-10-25 09:16:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addace7b70fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:16:55] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 09:16:55] testing.INFO: Old stock: 1  
[2026-10-25 09:16:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:16:55] testing.INFO: New stock: 0  
[2026-10-25 09:16:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addace7b70fa"} 
[2026-10-25 09:17:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addacf155834","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:05] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:17:05] testing.INFO: Old stock: 50  
[2026-10-25 09:17:05] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:17:05] testing.INFO: New stock: 49  
[2026-10-25 09:17:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacf155834"} 
[2026-10-25 09:17:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addacf18b885","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:05] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:17:05] testing.INFO: Old stock: 50  
[2026-10-25 09:17:05] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:17:05] testing.INFO: New stock: 49  
[2026-10-25 09:17:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacf18b885"} 
[2026-10-25 09:17:09] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 09:17:09"}  
[2026-10-25 09:17:09] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 09:17:09] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 09:17:09] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 09:17:09] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 09:17:09] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 09:17:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addacf59a245","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:09] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:17:09] testing.INFO: Old stock: 70  
[2026-10-25 09:17:09] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:17:09] testing.INFO: New stock: 65  
[2026-10-25 09:17:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacf59a245"} 
[2026-10-25 09:17:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 09:17:10] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:17:10] testing.INFO: Old stock: 62  
[2026-10-25 09:17:10] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:17:10] testing.INFO: New stock: 60  
[2026-10-25 09:17:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 09:17:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addacf70cb6b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:11] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:17:11] testing.INFO: Old stock: 59  
[2026-10-25 09:17:11] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:17:11] testing.INFO: New stock: 55  
[2026-10-25 09:17:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacf70cb6b"} 
[2026-10-25 09:17:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addacfa14088","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:14] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:17:14] testing.INFO: Old stock: 10  
[2026-10-25 09:17:14] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:17:14] testing.INFO: New stock: 6  
[2026-10-25 09:17:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfa14088"} 
[2026-10-25 09:17:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addacfaa32f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:14] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:17:14] testing.INFO: Old stock: 10  
[2026-10-25 09:17:14] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:17:14] testing.INFO: New stock: 5  
[2026-10-25 09:17:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfaa32f3"} 
[2026-10-25 09:17:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addacfb43250","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:15] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 09:17:15] testing.INFO: Old stock: 10  
[2026-10-25 09:17:15] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:17:15] testing.INFO: New stock: 6  
[2026-10-25 09:17:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfb43250"} 
[2026-10-25 09:17:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addacfc41ea3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:16] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 09:17:16] testing.INFO: Old stock: 5  
[2026-10-25 09:17:16] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:17:16] testing.INFO: New stock: 1  
[2026-10-25 09:17:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfc41ea3"} 
[2026-10-25 09:17:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addacfce080c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:17] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 09:17:17] testing.INFO: Old stock: 10  
[2026-10-25 09:17:17] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:17:17] testing.INFO: New stock: 5  
[2026-10-25 09:17:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfce080c"} 
[2026-10-25 09:17:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addacfdc0d7f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:17] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 09:17:17] testing.INFO: Old stock: 12  
[2026-10-25 09:17:17] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:17:17] testing.INFO: New stock: 7  
[2026-10-25 09:17:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfdc0d7f"} 
[2026-10-25 09:17:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addacfe4e11c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:18] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 09:17:18] testing.INFO: Old stock: 12  
[2026-10-25 09:17:18] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:17:18] testing.INFO: New stock: 7  
[2026-10-25 09:17:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addacfe4e11c"} 
[2026-10-25 09:17:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addad04b58c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:24] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:17:24] testing.INFO: Old stock: 10  
[2026-10-25 09:17:24] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:17:24] testing.INFO: New stock: 8  
[2026-10-25 09:17:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addad04b58c5"} 
[2026-10-25 09:17:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addad08720c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:28] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:17:28] testing.INFO: Old stock: 10  
[2026-10-25 09:17:28] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:17:28] testing.INFO: New stock: 8  
[2026-10-25 09:17:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addad08720c8"} 
[2026-10-25 09:17:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addad0b7ad9f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:31] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:17:31] testing.INFO: Old stock: 10  
[2026-10-25 09:17:31] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:17:31] testing.INFO: New stock: 8  
[2026-10-25 09:17:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addad0b7ad9f"} 
[2026-10-25 09:17:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addad0df0ab5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:17:34] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:17:34] testing.INFO: Old stock: 10  
[2026-10-25 09:17:34] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:17:34] testing.INFO: New stock: 8  
[2026-10-25 09:17:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addad0df0ab5"} 
[2026-10-25 09:29:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafd12a72b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:21] testing.INFO: Old stock: 100  
[2026-10-25 09:29:21] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:21] testing.INFO: New stock: 96  
[2026-10-25 09:29:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd12a72b"} 
[2026-10-25 09:29:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addafd158de6","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:29:21] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:21] testing.INFO: Old stock: 96  
[2026-10-25 09:29:21] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:29:21] testing.INFO: New stock: 65  
[2026-10-25 09:29:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd158de6"} 
[2026-10-25 09:29:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafd1f10c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:22] testing.INFO: Old stock: 100  
[2026-10-25 09:29:22] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:22] testing.INFO: New stock: 96  
[2026-10-25 09:29:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd1f10c2"} 
[2026-10-25 09:29:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addafd22301a","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:29:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:22] testing.INFO: Old stock: 96  
[2026-10-25 09:29:22] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:29:22] testing.INFO: New stock: 65  
[2026-10-25 09:29:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd22301a"} 
[2026-10-25 09:29:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafd2965e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:29:22] testing.INFO: Old stock: 100  
[2026-10-25 09:29:22] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:22] testing.INFO: New stock: 96  
[2026-10-25 09:29:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd2965e3"} 
[2026-10-25 09:29:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addafd2bb95d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:29:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:29:22] testing.INFO: Old stock: 96  
[2026-10-25 09:29:22] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:29:22] testing.INFO: New stock: 65  
[2026-10-25 09:29:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd2bb95d"} 
[2026-10-25 09:29:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafd423977","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:29:24] testing.INFO: Old stock: 100  
[2026-10-25 09:29:24] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:24] testing.INFO: New stock: 96  
[2026-10-25 09:29:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd423977"} 
[2026-10-25 09:29:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addafd4490d8","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:29:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:29:24] testing.INFO: Old stock: 96  
[2026-10-25 09:29:24] testing.INFO: Quantity deducted: 31  
[2026-10-25 09:29:24] testing.INFO: New stock: 65  
[2026-10-25 09:29:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafd4490d8"} 
[2026-10-25 09:29:26] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 09:29:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafda78213","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:30] testing.INFO: Old stock: 200  
[2026-10-25 09:29:30] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:30] testing.INFO: New stock: 196  
[2026-10-25 09:29:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafda78213"} 
[2026-10-25 09:29:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafda9fd4b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:29:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:30] testing.INFO: Old stock: 196  
[2026-10-25 09:29:30] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:30] testing.INFO: New stock: 194  
[2026-10-25 09:29:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafda9fd4b"} 
[2026-10-25 09:29:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addafdabb224","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 09:29:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addafdadbb94","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 09:29:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:30] testing.INFO: Old stock: 191  
[2026-10-25 09:29:30] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:30] testing.INFO: New stock: 190  
[2026-10-25 09:29:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafdadbb94"} 
[2026-10-25 09:29:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafdd6e952","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:33] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:33] testing.INFO: Old stock: 200  
[2026-10-25 09:29:33] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:33] testing.INFO: New stock: 196  
[2026-10-25 09:29:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafdd6e952"} 
[2026-10-25 09:29:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafdd9541e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:33] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:33] testing.INFO: Old stock: 196  
[2026-10-25 09:29:33] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:33] testing.INFO: New stock: 194  
[2026-10-25 09:29:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafdd9541e"} 
[2026-10-25 09:29:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafde46e44","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:34] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:29:34] testing.INFO: Old stock: 200  
[2026-10-25 09:29:34] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:34] testing.INFO: New stock: 196  
[2026-10-25 09:29:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafde46e44"} 
[2026-10-25 09:29:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addafdf407ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:29:35] testing.INFO: Old stock: 196  
[2026-10-25 09:29:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:35] testing.INFO: New stock: 195  
[2026-10-25 09:29:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafdf407ef"} 
[2026-10-25 09:29:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addafe1a226d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:37] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:29:37] testing.INFO: Old stock: 200  
[2026-10-25 09:29:37] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:29:37] testing.INFO: New stock: 196  
[2026-10-25 09:29:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe1a226d"} 
[2026-10-25 09:29:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T08:59:37+02:00"}} 
[2026-10-25 09:29:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:29:38] testing.INFO: Old stock: 196  
[2026-10-25 09:29:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:38] testing.INFO: New stock: 195  
[2026-10-25 09:29:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 09:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addafe53b9e1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:41] testing.INFO: Old stock: 10  
[2026-10-25 09:29:41] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:29:41] testing.INFO: New stock: 7  
[2026-10-25 09:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe53b9e1"} 
[2026-10-25 09:29:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6addafe58ef1c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:41] testing.INFO: Old stock: 10  
[2026-10-25 09:29:41] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:41] testing.INFO: New stock: 8  
[2026-10-25 09:29:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe58ef1c"} 
[2026-10-25 09:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addafe6027e8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:42] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6addafe649b65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6addafe6a03f7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafe700eb6","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 09:29:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafe755dff","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 09:29:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafe7c1208","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:43] testing.INFO: Old stock: 10  
[2026-10-25 09:29:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:43] testing.INFO: New stock: 8  
[2026-10-25 09:29:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe7c1208"} 
[2026-10-25 09:29:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafe84c8e2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:44] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:44] testing.INFO: Old stock: 10  
[2026-10-25 09:29:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:44] testing.INFO: New stock: 8  
[2026-10-25 09:29:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe84c8e2"} 
[2026-10-25 09:29:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafe8acb98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:44] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:29:44] testing.INFO: Old stock: 10  
[2026-10-25 09:29:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:44] testing.INFO: New stock: 8  
[2026-10-25 09:29:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe8acb98"} 
[2026-10-25 09:29:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafe935656","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:29:45] testing.INFO: Old stock: 3  
[2026-10-25 09:29:45] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:45] testing.INFO: New stock: 1  
[2026-10-25 09:29:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafe935656"} 
[2026-10-25 09:29:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addafea0cdf0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:46] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 09:29:46] testing.INFO: Old stock: 10  
[2026-10-25 09:29:46] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:46] testing.INFO: New stock: 8  
[2026-10-25 09:29:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addafea0cdf0"} 
[2026-10-25 09:29:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:46] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:29:46] testing.INFO: Old stock: 10  
[2026-10-25 09:29:46] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:29:46] testing.INFO: New stock: 8  
[2026-10-25 09:29:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:29:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:47] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:29:47] testing.INFO: Old stock: 10  
[2026-10-25 09:29:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:47] testing.INFO: New stock: 9  
[2026-10-25 09:29:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:29:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T07:29:00+02:00"}} 
[2026-10-25 09:29:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:29:47] testing.INFO: Old stock: 10  
[2026-10-25 09:29:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:47] testing.INFO: New stock: 9  
[2026-10-25 09:29:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:29:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T09:29:48+02:00"}} 
[2026-10-25 09:29:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:29:48] testing.INFO: Old stock: 10  
[2026-10-25 09:29:48] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:48] testing.INFO: New stock: 9  
[2026-10-25 09:29:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:29:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:29:48+02:00"}} 
[2026-10-25 09:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:29:49+02:00"}} 
[2026-10-25 09:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:29:49+02:00"}} 
[2026-10-25 09:29:49] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 09:29:49] testing.INFO: Old stock: 5  
[2026-10-25 09:29:49] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:29:49] testing.INFO: New stock: 2  
[2026-10-25 09:29:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:29:49+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 09:29:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T06:29:50+02:00"}} 
[2026-10-25 09:29:50] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 09:29:50] testing.INFO: Old stock: 10  
[2026-10-25 09:29:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:29:50] testing.INFO: New stock: 9  
[2026-10-25 09:29:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 09:29:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addaff5ee0da","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:29:58] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 09:29:58] testing.INFO: Old stock: 16  
[2026-10-25 09:29:58] testing.INFO: Quantity deducted: 6  
[2026-10-25 09:29:58] testing.INFO: New stock: 10  
[2026-10-25 09:29:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addaff5ee0da"} 
[2026-10-25 09:30:01] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 09:30:01] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 09:30:01] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 09:30:01"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-25 09:30:01] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 09:30:04] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 09:30:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addaffd92770","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addaffdb0491","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:05] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 09:30:05] testing.INFO: Old stock: 2  
[2026-10-25 09:30:05] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:05] testing.INFO: New stock: 1  
[2026-10-25 09:30:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addaffdb0491"} 
[2026-10-25 09:30:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:07] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 09:30:07] testing.INFO: Old stock: 35  
[2026-10-25 09:30:07] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:30:07] testing.INFO: New stock: 33  
[2026-10-25 09:30:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 09:30:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb0002f698","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:08] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 09:30:08] testing.INFO: Old stock: 13  
[2026-10-25 09:30:08] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:30:08] testing.INFO: New stock: 8  
[2026-10-25 09:30:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0002f698"} 
[2026-10-25 09:30:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb0004592f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:08] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 09:30:08] testing.INFO: Old stock: 8  
[2026-10-25 09:30:08] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:30:08] testing.INFO: New stock: 4  
[2026-10-25 09:30:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0004592f"} 
[2026-10-25 09:30:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addb0011400d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:09] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 09:30:09] testing.INFO: Old stock: 8  
[2026-10-25 09:30:09] testing.INFO: Quantity deducted: 6  
[2026-10-25 09:30:09] testing.INFO: New stock: 2  
[2026-10-25 09:30:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0011400d"} 
[2026-10-25 09:30:10] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 09:30:10] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 09:30:10] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Laravel","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 09:30:10"},"business_location":"Laravel","product_type":"Single"} 
[2026-10-25 09:30:10] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 09:30:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:20] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:30:20] testing.INFO: Old stock: 10  
[2026-10-25 09:30:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:20] testing.INFO: New stock: 9  
[2026-10-25 09:30:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 09:30:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:30:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:30:20] testing.INFO: Old stock: 10  
[2026-10-25 09:30:20] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:20] testing.INFO: New stock: 9  
[2026-10-25 09:30:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 09:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:30:22] testing.INFO: Old stock: 10  
[2026-10-25 09:30:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:22] testing.INFO: New stock: 9  
[2026-10-25 09:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 09:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:22] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:30:22] testing.INFO: Old stock: 10  
[2026-10-25 09:30:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:22] testing.INFO: New stock: 9  
[2026-10-25 09:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 09:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb00eb3f05","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:22] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:30:22] testing.INFO: Old stock: 100  
[2026-10-25 09:30:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:22] testing.INFO: New stock: 99  
[2026-10-25 09:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb00eb3f05"} 
[2026-10-25 09:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb00ed7c28","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 09:30:22] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:30:22] testing.INFO: Old stock: 99  
[2026-10-25 09:30:22] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:30:22] testing.INFO: New stock: 97  
[2026-10-25 09:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb00ed7c28"} 
[2026-10-25 09:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb00eedb87","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 09:30:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb0137f8a6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:27] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:30:27] testing.INFO: Old stock: 50  
[2026-10-25 09:30:27] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:30:27] testing.INFO: New stock: 48  
[2026-10-25 09:30:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0137f8a6"} 
[2026-10-25 09:30:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb013afb7a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:27] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:30:27] testing.INFO: Old stock: 48  
[2026-10-25 09:30:27] testing.INFO: Quantity deducted: 3  
[2026-10-25 09:30:27] testing.INFO: New stock: 45  
[2026-10-25 09:30:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb013afb7a"} 
[2026-10-25 09:30:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb0163d348","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:30] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:30:30] testing.INFO: Old stock: 20  
[2026-10-25 09:30:30] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:30:30] testing.INFO: New stock: 18  
[2026-10-25 09:30:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0163d348"} 
[2026-10-25 09:30:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb018b984f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:32] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:30:32] testing.INFO: Old stock: 50  
[2026-10-25 09:30:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:32] testing.INFO: New stock: 49  
[2026-10-25 09:30:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb018b984f"} 
[2026-10-25 09:30:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addb018e2c00","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb018e2c00"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addb0190cea1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0190cea1"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addb0192b3f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0192b3f8"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addb0194929d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 09:30:33] testing.INFO: Old stock: 1  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 0  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0194929d"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addb019678e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb019678e3"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addb01984faa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01984faa"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addb019a51ba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb019a51ba"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addb019c25e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 09:30:33] testing.INFO: Old stock: 50  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 49  
[2026-10-25 09:30:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb019c25e3"} 
[2026-10-25 09:30:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addb019e01ed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:33] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 09:30:33] testing.INFO: Old stock: 1  
[2026-10-25 09:30:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:33] testing.INFO: New stock: 0  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb019e01ed"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addb01a0b3b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01a0b3b2"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addb01a208d7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01a208d7"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addb01a3e35e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01a3e35e"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addb01a5c150","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01a5c150"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addb01a79dbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 09:30:34] testing.INFO: Old stock: 1  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 0  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01a79dbe"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addb01a97142","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01a97142"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addb01ab5a45","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01ab5a45"} 
[2026-10-25 09:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addb01ad307d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:34] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 09:30:34] testing.INFO: Old stock: 50  
[2026-10-25 09:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:34] testing.INFO: New stock: 49  
[2026-10-25 09:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01ad307d"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addb01af07b8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 09:30:35] testing.INFO: Old stock: 50  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 49  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01af07b8"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addb01b176b3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 09:30:35] testing.INFO: Old stock: 1  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 0  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01b176b3"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addb01b3364e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 09:30:35] testing.INFO: Old stock: 50  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 49  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01b3364e"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addb01b51026","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 09:30:35] testing.INFO: Old stock: 50  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 49  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01b51026"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addb01b6ea76","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 09:30:35] testing.INFO: Old stock: 50  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 49  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01b6ea76"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addb01b8b2b0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 09:30:35] testing.INFO: Old stock: 50  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 49  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01b8b2b0"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addb01ba8a1c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 09:30:35] testing.INFO: Old stock: 1  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 0  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01ba8a1c"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addb01bc60cf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:35] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 09:30:35] testing.INFO: Old stock: 50  
[2026-10-25 09:30:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:35] testing.INFO: New stock: 49  
[2026-10-25 09:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01bc60cf"} 
[2026-10-25 09:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addb01be3f54","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:36] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 09:30:36] testing.INFO: Old stock: 50  
[2026-10-25 09:30:36] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:36] testing.INFO: New stock: 49  
[2026-10-25 09:30:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01be3f54"} 
[2026-10-25 09:30:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addb01c0cc59","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:36] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 09:30:36] testing.INFO: Old stock: 50  
[2026-10-25 09:30:36] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:36] testing.INFO: New stock: 49  
[2026-10-25 09:30:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01c0cc59"} 
[2026-10-25 09:30:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addb01c29f4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:36] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 09:30:36] testing.INFO: Old stock: 50  
[2026-10-25 09:30:36] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:36] testing.INFO: New stock: 49  
[2026-10-25 09:30:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01c29f4c"} 
[2026-10-25 09:30:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addb01c47f5e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:30:36] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 09:30:36] testing.INFO: Old stock: 1  
[2026-10-25 09:30:36] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:30:36] testing.INFO: New stock: 0  
[2026-10-25 09:30:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb01c47f5e"} 
[2026-10-25 09:30:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb033df0c3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:31:00] testing.INFO: Old stock: 50  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 49  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb033df0c3"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addb0341a0fe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:31:00] testing.INFO: Old stock: 50  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 49  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0341a0fe"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addb0342de58","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 09:31:00] testing.INFO: Old stock: 50  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 49  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0342de58"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addb03452415","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 09:31:00] testing.INFO: Old stock: 50  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 49  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb03452415"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addb03476646","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 09:31:00] testing.INFO: Old stock: 1  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 0  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb03476646"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addb0349afef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 09:31:00] testing.INFO: Old stock: 50  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 49  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0349afef"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addb034ba760","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:00] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 09:31:00] testing.INFO: Old stock: 50  
[2026-10-25 09:31:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:00] testing.INFO: New stock: 49  
[2026-10-25 09:31:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb034ba760"} 
[2026-10-25 09:31:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addb034e443b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 09:31:01] testing.INFO: Old stock: 50  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 49  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb034e443b"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addb035146ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 09:31:01] testing.INFO: Old stock: 50  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 49  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb035146ae"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addb035373fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 09:31:01] testing.INFO: Old stock: 1  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 0  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb035373fa"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addb0355c80b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 09:31:01] testing.INFO: Old stock: 50  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 49  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0355c80b"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addb0357bc15","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 09:31:01] testing.INFO: Old stock: 50  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 49  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0357bc15"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addb0359c802","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 09:31:01] testing.INFO: Old stock: 50  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 49  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0359c802"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addb035ac254","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 09:31:01] testing.INFO: Old stock: 50  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 49  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb035ac254"} 
[2026-10-25 09:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addb035cc1e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:01] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 09:31:01] testing.INFO: Old stock: 1  
[2026-10-25 09:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:01] testing.INFO: New stock: 0  
[2026-10-25 09:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb035cc1e3"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addb035f2e43","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 09:31:02] testing.INFO: Old stock: 50  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 49  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb035f2e43"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addb0361f88f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 09:31:02] testing.INFO: Old stock: 50  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 49  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0361f88f"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addb03642c6e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 09:31:02] testing.INFO: Old stock: 50  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 49  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb03642c6e"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addb0366815b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 09:31:02] testing.INFO: Old stock: 50  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 49  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0366815b"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addb0368aff7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 09:31:02] testing.INFO: Old stock: 1  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 0  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0368aff7"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addb036b5fe7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 09:31:02] testing.INFO: Old stock: 50  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 49  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb036b5fe7"} 
[2026-10-25 09:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addb036d579d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:02] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 09:31:02] testing.INFO: Old stock: 50  
[2026-10-25 09:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:02] testing.INFO: New stock: 49  
[2026-10-25 09:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb036d579d"} 
[2026-10-25 09:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addb037048c9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:03] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 09:31:03] testing.INFO: Old stock: 50  
[2026-10-25 09:31:03] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:03] testing.INFO: New stock: 49  
[2026-10-25 09:31:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb037048c9"} 
[2026-10-25 09:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addb037325ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:03] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 09:31:03] testing.INFO: Old stock: 50  
[2026-10-25 09:31:03] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:03] testing.INFO: New stock: 49  
[2026-10-25 09:31:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb037325ce"} 
[2026-10-25 09:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addb03757079","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:03] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 09:31:03] testing.INFO: Old stock: 1  
[2026-10-25 09:31:03] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:03] testing.INFO: New stock: 0  
[2026-10-25 09:31:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb03757079"} 
[2026-10-25 09:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addb0377954f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:03] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 09:31:03] testing.INFO: Old stock: 50  
[2026-10-25 09:31:03] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:03] testing.INFO: New stock: 49  
[2026-10-25 09:31:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0377954f"} 
[2026-10-25 09:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addb037a9cb1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:03] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 09:31:03] testing.INFO: Old stock: 50  
[2026-10-25 09:31:03] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:03] testing.INFO: New stock: 49  
[2026-10-25 09:31:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb037a9cb1"} 
[2026-10-25 09:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addb037d8fc8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:04] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 09:31:04] testing.INFO: Old stock: 50  
[2026-10-25 09:31:04] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:04] testing.INFO: New stock: 49  
[2026-10-25 09:31:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb037d8fc8"} 
[2026-10-25 09:31:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addb0381d399","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:04] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 09:31:04] testing.INFO: Old stock: 50  
[2026-10-25 09:31:04] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:04] testing.INFO: New stock: 49  
[2026-10-25 09:31:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0381d399"} 
[2026-10-25 09:31:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addb038487cb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:04] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 09:31:04] testing.INFO: Old stock: 1  
[2026-10-25 09:31:04] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:04] testing.INFO: New stock: 0  
[2026-10-25 09:31:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb038487cb"} 
[2026-10-25 09:31:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb0428301e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:14] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 09:31:14] testing.INFO: Old stock: 50  
[2026-10-25 09:31:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:14] testing.INFO: New stock: 49  
[2026-10-25 09:31:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0428301e"} 
[2026-10-25 09:31:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addb042b67b8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:14] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 09:31:14] testing.INFO: Old stock: 50  
[2026-10-25 09:31:14] testing.INFO: Quantity deducted: 1  
[2026-10-25 09:31:14] testing.INFO: New stock: 49  
[2026-10-25 09:31:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb042b67b8"} 
[2026-10-25 09:31:18] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 09:31:18"}  
[2026-10-25 09:31:18] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 09:31:18] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 09:31:18] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 09:31:18] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 09:31:18] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 09:31:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb04725454","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:19] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:31:19] testing.INFO: Old stock: 70  
[2026-10-25 09:31:19] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:31:19] testing.INFO: New stock: 65  
[2026-10-25 09:31:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04725454"} 
[2026-10-25 09:31:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 09:31:19] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:31:19] testing.INFO: Old stock: 62  
[2026-10-25 09:31:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:31:19] testing.INFO: New stock: 60  
[2026-10-25 09:31:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 09:31:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb048bda40","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:20] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 09:31:20] testing.INFO: Old stock: 59  
[2026-10-25 09:31:20] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:31:20] testing.INFO: New stock: 55  
[2026-10-25 09:31:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb048bda40"} 
[2026-10-25 09:31:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb04c2e648","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:31:24] testing.INFO: Old stock: 10  
[2026-10-25 09:31:24] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:31:24] testing.INFO: New stock: 6  
[2026-10-25 09:31:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04c2e648"} 
[2026-10-25 09:31:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb04cd17ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:31:24] testing.INFO: Old stock: 10  
[2026-10-25 09:31:24] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:31:24] testing.INFO: New stock: 5  
[2026-10-25 09:31:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04cd17ad"} 
[2026-10-25 09:31:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb04d6bf98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:25] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 09:31:25] testing.INFO: Old stock: 10  
[2026-10-25 09:31:25] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:31:25] testing.INFO: New stock: 6  
[2026-10-25 09:31:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04d6bf98"} 
[2026-10-25 09:31:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb04e465c7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:26] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 09:31:26] testing.INFO: Old stock: 5  
[2026-10-25 09:31:26] testing.INFO: Quantity deducted: 4  
[2026-10-25 09:31:26] testing.INFO: New stock: 1  
[2026-10-25 09:31:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04e465c7"} 
[2026-10-25 09:31:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb04edee3f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:27] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 09:31:27] testing.INFO: Old stock: 10  
[2026-10-25 09:31:27] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:31:27] testing.INFO: New stock: 5  
[2026-10-25 09:31:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04edee3f"} 
[2026-10-25 09:31:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb04fc2caf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:27] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 09:31:27] testing.INFO: Old stock: 12  
[2026-10-25 09:31:27] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:31:27] testing.INFO: New stock: 7  
[2026-10-25 09:31:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb04fc2caf"} 
[2026-10-25 09:31:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb0504d000","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:28] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 09:31:28] testing.INFO: Old stock: 12  
[2026-10-25 09:31:28] testing.INFO: Quantity deducted: 5  
[2026-10-25 09:31:28] testing.INFO: New stock: 7  
[2026-10-25 09:31:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0504d000"} 
[2026-10-25 09:31:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb0590e300","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:37] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 09:31:37] testing.INFO: Old stock: 10  
[2026-10-25 09:31:37] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:31:37] testing.INFO: New stock: 8  
[2026-10-25 09:31:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb0590e300"} 
[2026-10-25 09:31:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb05cc8fd7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:40] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 09:31:40] testing.INFO: Old stock: 10  
[2026-10-25 09:31:40] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:31:40] testing.INFO: New stock: 8  
[2026-10-25 09:31:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb05cc8fd7"} 
[2026-10-25 09:31:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb05fb4101","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 09:31:43] testing.INFO: Old stock: 10  
[2026-10-25 09:31:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:31:43] testing.INFO: New stock: 8  
[2026-10-25 09:31:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb05fb4101"} 
[2026-10-25 09:31:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb06256c3e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 09:31:46] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 09:31:46] testing.INFO: Old stock: 10  
[2026-10-25 09:31:46] testing.INFO: Quantity deducted: 2  
[2026-10-25 09:31:46] testing.INFO: New stock: 8  
[2026-10-25 09:31:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb06256c3e"} 
[2026-10-25 09:53:52] local.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"invoice_no":"INV-1792914831923743","customer_name":"Walk-In Customer","contact_number":null,"payment_status":"paid","notes":null,"items":[{"id":18,"product_id":18,"name":"Antiseptic Liquid 500ml","sku":"PRD-00018","price":"9500.00","selling_price":"9500.00","purchase_price":"6000.00","quantity":1,"subtotal":9500,"product":{"id":18,"name":"Antiseptic Liquid 500ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":3,"category_id":8,"brand_id":6,"supplier_id":1,"purchase_price":"6000.00","last_purchase_price":"6000.00","selling_price":"9500.00","current_stock":20,"stock":"20.00","product_type":"Single","tax":null,"sku":"PRD-00018","image":null,"description":null,"alert_quantity":"5.00","expiry_date":"2029-10-20","last_purchase_date":"2026-10-20","created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z","next_expiry":"2029-10-20","next_expiry_qty":20,"expired_stock":0,"total_stock":20,"brand":{"id":6,"name":"Dettol","note":null,"created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z"},"category":{"id":8,"name":"First Aid","category_code":null,"description":null,"created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z"},"_serverStock":20}},{"id":12,"product_id":12,"name":"Cough Syrup 100ml","sku":"PRD-00012","price":"5000.00","selling_price":"5000.00","purchase_price":"3000.00","quantity":1,"subtotal":5000,"product":{"id":12,"name":"Cough Syrup 100ml","business_location":"EDUC Pharmacy (BL0001)","unit_id":3,"category_id":5,"brand_id":1,"supplier_id":1,"purchase_price":"3000.00","last_purchase_price":"3000.00","selling_price":"5000.00","current_stock":40,"stock":"40.00","product_type":"Single","tax":null,"sku":"PRD-00012","image":null,"description":null,"alert_quantity":"10.00","expiry_date":"2028-04-20","last_purchase_date":"2026-10-20","created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z","next_expiry":"2028-04-20","next_expiry_qty":40,"expired_stock":0,"total_stock":40,"brand":{"id":1,"name":"Generic","note":null,"created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z"},"category":{"id":5,"name":"Cough & Cold","category_code":null,"description":null,"created_at":"2026-10-20T18:44:57.000000Z","updated_at":"2026-10-20T18:44:57.000000Z"},"_serverStock":40}}],"payment_method":"cash"}} 
[2026-10-25 09:53:52] local.INFO: Stock deduction for product: Antiseptic Liquid 500ml  
[2026-10-25 09:53:52] local.INFO: Old stock: 20.00  
[2026-10-25 09:53:52] local.INFO: Quantity deducted: 1  
[2026-10-25 09:53:52] local.INFO: New stock: 19  
[2026-10-25 09:53:52] local.INFO: Stock deduction for product: Cough Syrup 100ml  
[2026-10-25 09:53:52] local.INFO: Old stock: 40.00  
[2026-10-25 09:53:52] local.INFO: Quantity deducted: 1  
[2026-10-25 09:53:52] local.INFO: New stock: 39  
[2026-10-25 09:53:52] local.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792914831923743"} 
[2026-10-25 10:00:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb7066369a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:06] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-25 10:00:06] testing.INFO: Old stock: 50  
[2026-10-25 10:00:06] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:00:06] testing.INFO: New stock: 49  
[2026-10-25 10:00:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7066369a"} 
[2026-10-25 10:00:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6addb70684037","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:00:06] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-25 10:00:06] testing.INFO: Old stock: 50  
[2026-10-25 10:00:06] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:00:06] testing.INFO: New stock: 48  
[2026-10-25 10:00:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb70684037"} 
[2026-10-25 10:00:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6addb7068b2e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:06] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-25 10:00:06] testing.INFO: Old stock: 50  
[2026-10-25 10:00:06] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:00:06] testing.INFO: New stock: 47  
[2026-10-25 10:00:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7068b2e5"} 
[2026-10-25 10:00:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb72325523","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:00:35] testing.INFO: Old stock: 100  
[2026-10-25 10:00:35] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:35] testing.INFO: New stock: 96  
[2026-10-25 10:00:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb72325523"} 
[2026-10-25 10:00:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addb7235dc52","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:00:35] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:00:35] testing.INFO: Old stock: 96  
[2026-10-25 10:00:35] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:00:35] testing.INFO: New stock: 65  
[2026-10-25 10:00:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7235dc52"} 
[2026-10-25 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb72418e2a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:00:36] testing.INFO: Old stock: 100  
[2026-10-25 10:00:36] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:36] testing.INFO: New stock: 96  
[2026-10-25 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb72418e2a"} 
[2026-10-25 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addb7244fdaa","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:00:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:00:36] testing.INFO: Old stock: 96  
[2026-10-25 10:00:36] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:00:36] testing.INFO: New stock: 65  
[2026-10-25 10:00:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7244fdaa"} 
[2026-10-25 10:00:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb724e883c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:37] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:00:37] testing.INFO: Old stock: 100  
[2026-10-25 10:00:37] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:37] testing.INFO: New stock: 96  
[2026-10-25 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb724e883c"} 
[2026-10-25 10:00:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addb72529613","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:00:37] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:00:37] testing.INFO: Old stock: 96  
[2026-10-25 10:00:37] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:00:37] testing.INFO: New stock: 65  
[2026-10-25 10:00:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb72529613"} 
[2026-10-25 10:00:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb7270464e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:00:39] testing.INFO: Old stock: 100  
[2026-10-25 10:00:39] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:39] testing.INFO: New stock: 96  
[2026-10-25 10:00:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7270464e"} 
[2026-10-25 10:00:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addb727345da","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:00:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:00:39] testing.INFO: Old stock: 96  
[2026-10-25 10:00:39] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:00:39] testing.INFO: New stock: 65  
[2026-10-25 10:00:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb727345da"} 
[2026-10-25 10:00:41] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 10:00:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb72ec06e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:46] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:00:46] testing.INFO: Old stock: 200  
[2026-10-25 10:00:46] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:46] testing.INFO: New stock: 196  
[2026-10-25 10:00:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb72ec06e5"} 
[2026-10-25 10:00:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb72eea6ab","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:00:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:00:47] testing.INFO: Old stock: 196  
[2026-10-25 10:00:47] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:00:47] testing.INFO: New stock: 194  
[2026-10-25 10:00:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb72eea6ab"} 
[2026-10-25 10:00:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb72f153d1","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 10:00:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb72f35cdb","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 10:00:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:00:47] testing.INFO: Old stock: 191  
[2026-10-25 10:00:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:00:47] testing.INFO: New stock: 190  
[2026-10-25 10:00:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb72f35cdb"} 
[2026-10-25 10:00:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb731dc113","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:50] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:00:50] testing.INFO: Old stock: 200  
[2026-10-25 10:00:50] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:50] testing.INFO: New stock: 196  
[2026-10-25 10:00:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb731dc113"} 
[2026-10-25 10:00:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb7320c104","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:50] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:00:50] testing.INFO: Old stock: 196  
[2026-10-25 10:00:50] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:00:50] testing.INFO: New stock: 194  
[2026-10-25 10:00:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7320c104"} 
[2026-10-25 10:00:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb732afd69","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:50] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:00:50] testing.INFO: Old stock: 200  
[2026-10-25 10:00:50] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:50] testing.INFO: New stock: 196  
[2026-10-25 10:00:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb732afd69"} 
[2026-10-25 10:00:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb733f1b34","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:52] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:00:52] testing.INFO: Old stock: 196  
[2026-10-25 10:00:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:00:52] testing.INFO: New stock: 195  
[2026-10-25 10:00:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb733f1b34"} 
[2026-10-25 10:00:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb7375a835","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:00:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:00:55] testing.INFO: Old stock: 200  
[2026-10-25 10:00:55] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:00:55] testing.INFO: New stock: 196  
[2026-10-25 10:00:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7375a835"} 
[2026-10-25 10:00:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T09:30:55+02:00"}} 
[2026-10-25 10:00:56] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:00:56] testing.INFO: Old stock: 196  
[2026-10-25 10:00:56] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:00:56] testing.INFO: New stock: 195  
[2026-10-25 10:00:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 10:01:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb73befb04","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:00] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:01:00] testing.INFO: Old stock: 10  
[2026-10-25 10:01:00] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:01:00] testing.INFO: New stock: 7  
[2026-10-25 10:01:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb73befb04"} 
[2026-10-25 10:01:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6addb73c6bb76","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:00] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:01:00] testing.INFO: Old stock: 10  
[2026-10-25 10:01:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:00] testing.INFO: New stock: 8  
[2026-10-25 10:01:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb73c6bb76"} 
[2026-10-25 10:01:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb73cddc4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:01] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb73d4bd19","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6addb73daa375","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb73e0d89a","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 10:01:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb73e6abfb","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 10:01:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb73f4fddc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:03] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:01:03] testing.INFO: Old stock: 10  
[2026-10-25 10:01:03] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:03] testing.INFO: New stock: 8  
[2026-10-25 10:01:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb73f4fddc"} 
[2026-10-25 10:01:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb74026b9f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:04] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:01:04] testing.INFO: Old stock: 10  
[2026-10-25 10:01:04] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:04] testing.INFO: New stock: 8  
[2026-10-25 10:01:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb74026b9f"} 
[2026-10-25 10:01:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb740cdaf4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:04] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:01:04] testing.INFO: Old stock: 10  
[2026-10-25 10:01:04] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:04] testing.INFO: New stock: 8  
[2026-10-25 10:01:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb740cdaf4"} 
[2026-10-25 10:01:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb741747e6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:05] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:01:05] testing.INFO: Old stock: 3  
[2026-10-25 10:01:05] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:05] testing.INFO: New stock: 1  
[2026-10-25 10:01:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb741747e6"} 
[2026-10-25 10:01:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb74274db1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:06] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 10:01:06] testing.INFO: Old stock: 10  
[2026-10-25 10:01:06] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:06] testing.INFO: New stock: 8  
[2026-10-25 10:01:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb74274db1"} 
[2026-10-25 10:01:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:07] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:01:07] testing.INFO: Old stock: 10  
[2026-10-25 10:01:07] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:07] testing.INFO: New stock: 8  
[2026-10-25 10:01:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:01:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:07] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:01:07] testing.INFO: Old stock: 10  
[2026-10-25 10:01:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:07] testing.INFO: New stock: 9  
[2026-10-25 10:01:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:01:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T08:01:00+02:00"}} 
[2026-10-25 10:01:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:01:08] testing.INFO: Old stock: 10  
[2026-10-25 10:01:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:08] testing.INFO: New stock: 9  
[2026-10-25 10:01:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:01:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T10:01:08+02:00"}} 
[2026-10-25 10:01:08] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:01:08] testing.INFO: Old stock: 10  
[2026-10-25 10:01:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:08] testing.INFO: New stock: 9  
[2026-10-25 10:01:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:01:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:01:08+02:00"}} 
[2026-10-25 10:01:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:01:09+02:00"}} 
[2026-10-25 10:01:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:01:09+02:00"}} 
[2026-10-25 10:01:09] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 10:01:09] testing.INFO: Old stock: 5  
[2026-10-25 10:01:09] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:01:09] testing.INFO: New stock: 2  
[2026-10-25 10:01:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:01:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:01:10+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 10:01:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T07:01:10+02:00"}} 
[2026-10-25 10:01:10] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 10:01:10] testing.INFO: Old stock: 10  
[2026-10-25 10:01:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:10] testing.INFO: New stock: 9  
[2026-10-25 10:01:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:01:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb74e831de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:18] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-25 10:01:18] testing.INFO: Old stock: 50  
[2026-10-25 10:01:18] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:18] testing.INFO: New stock: 49  
[2026-10-25 10:01:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb74e831de"} 
[2026-10-25 10:01:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6addb74eae8e2","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:01:18] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-25 10:01:18] testing.INFO: Old stock: 50  
[2026-10-25 10:01:18] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:18] testing.INFO: New stock: 48  
[2026-10-25 10:01:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb74eae8e2"} 
[2026-10-25 10:01:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6addb74ec9a5b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:18] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-25 10:01:18] testing.INFO: Old stock: 50  
[2026-10-25 10:01:18] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:01:18] testing.INFO: New stock: 47  
[2026-10-25 10:01:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb74ec9a5b"} 
[2026-10-25 10:01:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addb7530604b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:23] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 10:01:23] testing.INFO: Old stock: 16  
[2026-10-25 10:01:23] testing.INFO: Quantity deducted: 6  
[2026-10-25 10:01:23] testing.INFO: New stock: 10  
[2026-10-25 10:01:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7530604b"} 
[2026-10-25 10:01:26] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 10:01:26] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 10:01:26] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 10:01:26"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 10:01:26] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 10:01:29] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 10:01:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb75b22120","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb75b4d127","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:31] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 10:01:31] testing.INFO: Old stock: 2  
[2026-10-25 10:01:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:31] testing.INFO: New stock: 1  
[2026-10-25 10:01:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb75b4d127"} 
[2026-10-25 10:01:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:33] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 10:01:33] testing.INFO: Old stock: 35  
[2026-10-25 10:01:33] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:33] testing.INFO: New stock: 33  
[2026-10-25 10:01:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 10:01:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb75e9a2fe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:34] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 10:01:34] testing.INFO: Old stock: 13  
[2026-10-25 10:01:34] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:01:34] testing.INFO: New stock: 8  
[2026-10-25 10:01:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb75e9a2fe"} 
[2026-10-25 10:01:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb75ec6681","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:34] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 10:01:34] testing.INFO: Old stock: 8  
[2026-10-25 10:01:34] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:01:34] testing.INFO: New stock: 4  
[2026-10-25 10:01:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb75ec6681"} 
[2026-10-25 10:01:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addb75fb319c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:35] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 10:01:35] testing.INFO: Old stock: 8  
[2026-10-25 10:01:35] testing.INFO: Quantity deducted: 6  
[2026-10-25 10:01:35] testing.INFO: New stock: 2  
[2026-10-25 10:01:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb75fb319c"} 
[2026-10-25 10:01:37] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 10:01:37] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 10:01:37] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 10:01:37"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 10:01:37] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 10:01:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:50] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:01:50] testing.INFO: Old stock: 10  
[2026-10-25 10:01:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:50] testing.INFO: New stock: 9  
[2026-10-25 10:01:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 10:01:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:01:50] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:01:50] testing.INFO: Old stock: 10  
[2026-10-25 10:01:50] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:50] testing.INFO: New stock: 9  
[2026-10-25 10:01:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 10:01:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:52] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:01:52] testing.INFO: Old stock: 10  
[2026-10-25 10:01:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:52] testing.INFO: New stock: 9  
[2026-10-25 10:01:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 10:01:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:01:52] testing.INFO: Old stock: 10  
[2026-10-25 10:01:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:52] testing.INFO: New stock: 9  
[2026-10-25 10:01:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 10:01:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb770d1278","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:52] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:01:52] testing.INFO: Old stock: 100  
[2026-10-25 10:01:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:01:52] testing.INFO: New stock: 99  
[2026-10-25 10:01:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb770d1278"} 
[2026-10-25 10:01:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb77107910","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:01:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:01:53] testing.INFO: Old stock: 99  
[2026-10-25 10:01:53] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:53] testing.INFO: New stock: 97  
[2026-10-25 10:01:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77107910"} 
[2026-10-25 10:01:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb77122c81","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 10:01:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb77768f79","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:59] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:01:59] testing.INFO: Old stock: 50  
[2026-10-25 10:01:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:01:59] testing.INFO: New stock: 48  
[2026-10-25 10:01:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77768f79"} 
[2026-10-25 10:01:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addb777c28d5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:01:59] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:01:59] testing.INFO: Old stock: 48  
[2026-10-25 10:01:59] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:01:59] testing.INFO: New stock: 45  
[2026-10-25 10:01:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb777c28d5"} 
[2026-10-25 10:02:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb77b276bd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:03] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:02:03] testing.INFO: Old stock: 20  
[2026-10-25 10:02:03] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:02:03] testing.INFO: New stock: 18  
[2026-10-25 10:02:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77b276bd"} 
[2026-10-25 10:02:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb77ecd904","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:02:07] testing.INFO: Old stock: 50  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 49  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77ecd904"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addb77f16af2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:02:07] testing.INFO: Old stock: 50  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 49  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77f16af2"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addb77f40b4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:02:07] testing.INFO: Old stock: 50  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 49  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77f40b4c"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addb77f659de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 10:02:07] testing.INFO: Old stock: 50  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 49  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77f659de"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addb77f85ceb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 10:02:07] testing.INFO: Old stock: 1  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 0  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77f85ceb"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addb77fa6f14","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 10:02:07] testing.INFO: Old stock: 50  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 49  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77fa6f14"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addb77fc28b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:07] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 10:02:07] testing.INFO: Old stock: 50  
[2026-10-25 10:02:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:07] testing.INFO: New stock: 49  
[2026-10-25 10:02:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77fc28b6"} 
[2026-10-25 10:02:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addb77fe3754","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 10:02:08] testing.INFO: Old stock: 50  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 49  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb77fe3754"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addb78011e1d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 10:02:08] testing.INFO: Old stock: 50  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 49  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb78011e1d"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addb7803418a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 10:02:08] testing.INFO: Old stock: 1  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 0  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7803418a"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addb78052e3a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 10:02:08] testing.INFO: Old stock: 50  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 49  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb78052e3a"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addb7806f10b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 10:02:08] testing.INFO: Old stock: 50  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 49  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7806f10b"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addb78092cb0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 10:02:08] testing.INFO: Old stock: 50  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 49  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb78092cb0"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addb780b5454","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 10:02:08] testing.INFO: Old stock: 50  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 49  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb780b5454"} 
[2026-10-25 10:02:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addb780d6d40","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:08] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 10:02:08] testing.INFO: Old stock: 1  
[2026-10-25 10:02:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:08] testing.INFO: New stock: 0  
[2026-10-25 10:02:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb780d6d40"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addb78102348","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 10:02:09] testing.INFO: Old stock: 50  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 49  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb78102348"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addb7812579e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 10:02:09] testing.INFO: Old stock: 50  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 49  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7812579e"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addb781484de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 10:02:09] testing.INFO: Old stock: 50  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 49  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb781484de"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addb78170ea1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 10:02:09] testing.INFO: Old stock: 50  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 49  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb78170ea1"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addb7819208e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 10:02:09] testing.INFO: Old stock: 1  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 0  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7819208e"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addb781b09d6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 10:02:09] testing.INFO: Old stock: 50  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 49  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb781b09d6"} 
[2026-10-25 10:02:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addb781d27c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:09] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 10:02:09] testing.INFO: Old stock: 50  
[2026-10-25 10:02:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:09] testing.INFO: New stock: 49  
[2026-10-25 10:02:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb781d27c5"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addb781f39bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 10:02:10] testing.INFO: Old stock: 50  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 49  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb781f39bc"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addb7821bb23","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 10:02:10] testing.INFO: Old stock: 50  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 49  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7821bb23"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addb7823cdfe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 10:02:10] testing.INFO: Old stock: 1  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 0  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7823cdfe"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addb7825e633","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 10:02:10] testing.INFO: Old stock: 50  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 49  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7825e633"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addb7827ef3b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 10:02:10] testing.INFO: Old stock: 50  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 49  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7827ef3b"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addb7829fd77","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 10:02:10] testing.INFO: Old stock: 50  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 49  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7829fd77"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addb782bf66c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:10] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 10:02:10] testing.INFO: Old stock: 50  
[2026-10-25 10:02:10] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:10] testing.INFO: New stock: 49  
[2026-10-25 10:02:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb782bf66c"} 
[2026-10-25 10:02:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addb782df715","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:11] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 10:02:11] testing.INFO: Old stock: 1  
[2026-10-25 10:02:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:11] testing.INFO: New stock: 0  
[2026-10-25 10:02:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb782df715"} 
[2026-10-25 10:02:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb7ac1eba6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:52] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:02:52] testing.INFO: Old stock: 50  
[2026-10-25 10:02:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:52] testing.INFO: New stock: 49  
[2026-10-25 10:02:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ac1eba6"} 
[2026-10-25 10:02:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addb7ac4c85d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:52] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:02:52] testing.INFO: Old stock: 50  
[2026-10-25 10:02:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:52] testing.INFO: New stock: 49  
[2026-10-25 10:02:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ac4c85d"} 
[2026-10-25 10:02:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addb7ac6e85f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:52] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:02:52] testing.INFO: Old stock: 50  
[2026-10-25 10:02:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:52] testing.INFO: New stock: 49  
[2026-10-25 10:02:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ac6e85f"} 
[2026-10-25 10:02:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addb7ac8f522","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:52] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 10:02:52] testing.INFO: Old stock: 50  
[2026-10-25 10:02:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:52] testing.INFO: New stock: 49  
[2026-10-25 10:02:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ac8f522"} 
[2026-10-25 10:02:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addb7acb1b45","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:52] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 10:02:52] testing.INFO: Old stock: 1  
[2026-10-25 10:02:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:52] testing.INFO: New stock: 0  
[2026-10-25 10:02:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7acb1b45"} 
[2026-10-25 10:02:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addb7acd3ecc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:52] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 10:02:52] testing.INFO: Old stock: 50  
[2026-10-25 10:02:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:52] testing.INFO: New stock: 49  
[2026-10-25 10:02:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7acd3ecc"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addb7ad00b86","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 10:02:53] testing.INFO: Old stock: 50  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 49  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ad00b86"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addb7ad23056","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 10:02:53] testing.INFO: Old stock: 50  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 49  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ad23056"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addb7ad4529f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 10:02:53] testing.INFO: Old stock: 50  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 49  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ad4529f"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addb7ad66e88","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 10:02:53] testing.INFO: Old stock: 1  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 0  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ad66e88"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addb7ad86e61","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 10:02:53] testing.INFO: Old stock: 50  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 49  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ad86e61"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addb7ada526f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 10:02:53] testing.INFO: Old stock: 50  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 49  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ada526f"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addb7adc82c3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:53] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 10:02:53] testing.INFO: Old stock: 50  
[2026-10-25 10:02:53] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:53] testing.INFO: New stock: 49  
[2026-10-25 10:02:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7adc82c3"} 
[2026-10-25 10:02:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addb7adea4ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 10:02:54] testing.INFO: Old stock: 50  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 49  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7adea4ad"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addb7ae18fc7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 10:02:54] testing.INFO: Old stock: 1  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 0  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ae18fc7"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addb7ae3aa1b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 10:02:54] testing.INFO: Old stock: 50  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 49  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ae3aa1b"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addb7ae5a5d5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 10:02:54] testing.INFO: Old stock: 50  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 49  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ae5a5d5"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addb7ae7cf69","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 10:02:54] testing.INFO: Old stock: 50  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 49  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ae7cf69"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addb7ae9c4c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 10:02:54] testing.INFO: Old stock: 50  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 49  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ae9c4c8"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addb7aec0587","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:54] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 10:02:54] testing.INFO: Old stock: 1  
[2026-10-25 10:02:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:54] testing.INFO: New stock: 0  
[2026-10-25 10:02:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7aec0587"} 
[2026-10-25 10:02:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addb7aee3bd5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7aee3bd5"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addb7af0f094","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7af0f094"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addb7af30beb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7af30beb"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addb7af5185d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7af5185d"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addb7af723cb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 10:02:55] testing.INFO: Old stock: 1  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 0  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7af723cb"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addb7af9319a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7af9319a"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addb7afb4852","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7afb4852"} 
[2026-10-25 10:02:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addb7afd7282","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:55] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 10:02:55] testing.INFO: Old stock: 50  
[2026-10-25 10:02:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:55] testing.INFO: New stock: 49  
[2026-10-25 10:02:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7afd7282"} 
[2026-10-25 10:02:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addb7b004834","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:56] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 10:02:56] testing.INFO: Old stock: 50  
[2026-10-25 10:02:56] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:56] testing.INFO: New stock: 49  
[2026-10-25 10:02:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7b004834"} 
[2026-10-25 10:02:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addb7b024ad8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:02:56] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 10:02:56] testing.INFO: Old stock: 1  
[2026-10-25 10:02:56] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:02:56] testing.INFO: New stock: 0  
[2026-10-25 10:02:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7b024ad8"} 
[2026-10-25 10:03:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addb7bb1a03b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:07] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:03:07] testing.INFO: Old stock: 50  
[2026-10-25 10:03:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:03:07] testing.INFO: New stock: 49  
[2026-10-25 10:03:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7bb1a03b"} 
[2026-10-25 10:03:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addb7bb47132","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:07] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:03:07] testing.INFO: Old stock: 50  
[2026-10-25 10:03:07] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:03:07] testing.INFO: New stock: 49  
[2026-10-25 10:03:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7bb47132"} 
[2026-10-25 10:03:11] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 10:03:11"}  
[2026-10-25 10:03:11] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 10:03:11] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 10:03:11] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 10:03:11] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 10:03:11] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 10:03:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb7c099559","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:12] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 10:03:12] testing.INFO: Old stock: 70  
[2026-10-25 10:03:12] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:03:12] testing.INFO: New stock: 65  
[2026-10-25 10:03:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c099559"} 
[2026-10-25 10:03:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 10:03:13] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 10:03:13] testing.INFO: Old stock: 62  
[2026-10-25 10:03:13] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:03:13] testing.INFO: New stock: 60  
[2026-10-25 10:03:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 10:03:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb7c2a75a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:14] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 10:03:14] testing.INFO: Old stock: 59  
[2026-10-25 10:03:14] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:03:14] testing.INFO: New stock: 55  
[2026-10-25 10:03:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c2a75a4"} 
[2026-10-25 10:03:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb7c6dda20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:19] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:03:19] testing.INFO: Old stock: 10  
[2026-10-25 10:03:19] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:03:19] testing.INFO: New stock: 6  
[2026-10-25 10:03:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c6dda20"} 
[2026-10-25 10:03:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb7c782fb8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:19] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:03:19] testing.INFO: Old stock: 10  
[2026-10-25 10:03:19] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:03:19] testing.INFO: New stock: 5  
[2026-10-25 10:03:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c782fb8"} 
[2026-10-25 10:03:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb7c828b66","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:20] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 10:03:20] testing.INFO: Old stock: 10  
[2026-10-25 10:03:20] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:03:20] testing.INFO: New stock: 6  
[2026-10-25 10:03:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c828b66"} 
[2026-10-25 10:03:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addb7c90fea2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:21] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 10:03:21] testing.INFO: Old stock: 5  
[2026-10-25 10:03:21] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:03:21] testing.INFO: New stock: 1  
[2026-10-25 10:03:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c90fea2"} 
[2026-10-25 10:03:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb7c9b5512","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:21] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 10:03:21] testing.INFO: Old stock: 10  
[2026-10-25 10:03:21] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:03:21] testing.INFO: New stock: 5  
[2026-10-25 10:03:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7c9b5512"} 
[2026-10-25 10:03:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb7caa92c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:22] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 10:03:22] testing.INFO: Old stock: 12  
[2026-10-25 10:03:22] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:03:22] testing.INFO: New stock: 7  
[2026-10-25 10:03:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7caa92c8"} 
[2026-10-25 10:03:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addb7cb35e22","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:23] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 10:03:23] testing.INFO: Old stock: 12  
[2026-10-25 10:03:23] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:03:23] testing.INFO: New stock: 7  
[2026-10-25 10:03:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7cb35e22"} 
[2026-10-25 10:03:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb7d4cadf3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:32] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:03:32] testing.INFO: Old stock: 10  
[2026-10-25 10:03:32] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:03:32] testing.INFO: New stock: 8  
[2026-10-25 10:03:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7d4cadf3"} 
[2026-10-25 10:03:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb7d996a06","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:37] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:03:37] testing.INFO: Old stock: 10  
[2026-10-25 10:03:37] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:03:37] testing.INFO: New stock: 8  
[2026-10-25 10:03:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7d996a06"} 
[2026-10-25 10:03:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb7ddc52c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:41] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:03:41] testing.INFO: Old stock: 10  
[2026-10-25 10:03:41] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:03:42] testing.INFO: New stock: 8  
[2026-10-25 10:03:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7ddc52c4"} 
[2026-10-25 10:03:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addb7e1b6f11","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:03:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:03:45] testing.INFO: Old stock: 10  
[2026-10-25 10:03:45] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:03:45] testing.INFO: New stock: 8  
[2026-10-25 10:03:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addb7e1b6f11"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc049e1f59","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc049e1f59"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc04a29eff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a29eff"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addc04a32a75","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a32a75"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addc04a3a7ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a3a7ae"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addc04a42277","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 10:39:38] testing.INFO: Old stock: 1  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 0  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a42277"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addc04a4afab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a4afab"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addc04a5eb8a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a5eb8a"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addc04a66b8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a66b8f"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addc04a6f05d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a6f05d"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addc04a77994","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 10:39:38] testing.INFO: Old stock: 1  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 0  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a77994"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addc04a7f933","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a7f933"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addc04a88012","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a88012"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addc04a8fe67","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a8fe67"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addc04a996a0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04a996a0"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addc04aa1dc5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 10:39:38] testing.INFO: Old stock: 1  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 0  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04aa1dc5"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addc04aa982f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04aa982f"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addc04ab0d98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04ab0d98"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addc04aba2b4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04aba2b4"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addc04ac2b5b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04ac2b5b"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addc04acb203","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 10:39:38] testing.INFO: Old stock: 1  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 0  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04acb203"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addc04ad2ff6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04ad2ff6"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addc04adae3c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04adae3c"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addc04ae4e5e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04ae4e5e"} 
[2026-10-25 10:39:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addc04aed7b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:38] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 10:39:38] testing.INFO: Old stock: 50  
[2026-10-25 10:39:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:38] testing.INFO: New stock: 49  
[2026-10-25 10:39:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04aed7b7"} 
[2026-10-25 10:39:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addc04b02866","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:39] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 10:39:39] testing.INFO: Old stock: 1  
[2026-10-25 10:39:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:39] testing.INFO: New stock: 0  
[2026-10-25 10:39:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04b02866"} 
[2026-10-25 10:39:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addc04b0b26c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:39] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 10:39:39] testing.INFO: Old stock: 50  
[2026-10-25 10:39:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:39] testing.INFO: New stock: 49  
[2026-10-25 10:39:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04b0b26c"} 
[2026-10-25 10:39:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addc04b136d4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:39] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 10:39:39] testing.INFO: Old stock: 50  
[2026-10-25 10:39:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:39] testing.INFO: New stock: 49  
[2026-10-25 10:39:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04b136d4"} 
[2026-10-25 10:39:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addc04b1aa60","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:39] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 10:39:39] testing.INFO: Old stock: 50  
[2026-10-25 10:39:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:39] testing.INFO: New stock: 49  
[2026-10-25 10:39:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04b1aa60"} 
[2026-10-25 10:39:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addc04b26433","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:39] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 10:39:39] testing.INFO: Old stock: 50  
[2026-10-25 10:39:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:39] testing.INFO: New stock: 49  
[2026-10-25 10:39:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04b26433"} 
[2026-10-25 10:39:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addc04b2e7e9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:39:39] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 10:39:39] testing.INFO: Old stock: 1  
[2026-10-25 10:39:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:39:39] testing.INFO: New stock: 0  
[2026-10-25 10:39:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc04b2e7e9"} 
[2026-10-25 10:40:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0765488a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:22] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:40:22] testing.INFO: Old stock: 50  
[2026-10-25 10:40:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:22] testing.INFO: New stock: 49  
[2026-10-25 10:40:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0765488a"} 
[2026-10-25 10:40:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc0767afd0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:22] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:40:22] testing.INFO: Old stock: 50  
[2026-10-25 10:40:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:22] testing.INFO: New stock: 49  
[2026-10-25 10:40:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0767afd0"} 
[2026-10-25 10:40:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addc07696812","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:22] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:40:22] testing.INFO: Old stock: 50  
[2026-10-25 10:40:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:22] testing.INFO: New stock: 49  
[2026-10-25 10:40:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc07696812"} 
[2026-10-25 10:40:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addc076b7d18","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:22] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 10:40:22] testing.INFO: Old stock: 50  
[2026-10-25 10:40:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:22] testing.INFO: New stock: 49  
[2026-10-25 10:40:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc076b7d18"} 
[2026-10-25 10:40:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addc076da091","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:22] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 10:40:22] testing.INFO: Old stock: 1  
[2026-10-25 10:40:22] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:22] testing.INFO: New stock: 0  
[2026-10-25 10:40:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc076da091"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addc07707971","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 10:40:23] testing.INFO: Old stock: 50  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 49  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc07707971"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addc077281af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 10:40:23] testing.INFO: Old stock: 50  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 49  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc077281af"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addc07746d7c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 10:40:23] testing.INFO: Old stock: 50  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 49  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc07746d7c"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addc0776bca2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 10:40:23] testing.INFO: Old stock: 50  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 49  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0776bca2"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addc0778c280","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 10:40:23] testing.INFO: Old stock: 1  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 0  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0778c280"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addc077abc00","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 10:40:23] testing.INFO: Old stock: 50  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 49  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc077abc00"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addc077cca86","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:23] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 10:40:23] testing.INFO: Old stock: 50  
[2026-10-25 10:40:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:23] testing.INFO: New stock: 49  
[2026-10-25 10:40:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc077cca86"} 
[2026-10-25 10:40:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addc077ea533","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 10:40:24] testing.INFO: Old stock: 50  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 49  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc077ea533"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addc078111fc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 10:40:24] testing.INFO: Old stock: 50  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 49  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc078111fc"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addc0782feb4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 10:40:24] testing.INFO: Old stock: 1  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 0  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0782feb4"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addc0784def6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 10:40:24] testing.INFO: Old stock: 50  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 49  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0784def6"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addc0786d498","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 10:40:24] testing.INFO: Old stock: 50  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 49  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0786d498"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addc07886169","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 10:40:24] testing.INFO: Old stock: 50  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 49  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc07886169"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addc078a2c24","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 10:40:24] testing.INFO: Old stock: 50  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 49  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc078a2c24"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addc078c5487","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:24] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 10:40:24] testing.INFO: Old stock: 1  
[2026-10-25 10:40:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:24] testing.INFO: New stock: 0  
[2026-10-25 10:40:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc078c5487"} 
[2026-10-25 10:40:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addc078e4243","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc078e4243"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addc0790e7b1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0790e7b1"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addc0792cc16","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0792cc16"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addc0794aeea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0794aeea"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addc07968f17","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 10:40:25] testing.INFO: Old stock: 1  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 0  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc07968f17"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addc0798569a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0798569a"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addc079a3ad8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc079a3ad8"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addc079c134c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc079c134c"} 
[2026-10-25 10:40:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addc079e05b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:25] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 10:40:25] testing.INFO: Old stock: 50  
[2026-10-25 10:40:25] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:25] testing.INFO: New stock: 49  
[2026-10-25 10:40:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc079e05b2"} 
[2026-10-25 10:40:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addc07a0a5b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:26] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 10:40:26] testing.INFO: Old stock: 1  
[2026-10-25 10:40:26] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:26] testing.INFO: New stock: 0  
[2026-10-25 10:40:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc07a0a5b2"} 
[2026-10-25 10:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc083c2d1f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:35] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:40:35] testing.INFO: Old stock: 50  
[2026-10-25 10:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:35] testing.INFO: New stock: 49  
[2026-10-25 10:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc083c2d1f"} 
[2026-10-25 10:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc083ec979","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:36] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:40:36] testing.INFO: Old stock: 50  
[2026-10-25 10:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:36] testing.INFO: New stock: 49  
[2026-10-25 10:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc083ec979"} 
[2026-10-25 10:40:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc087e00f5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:40] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:40:40] testing.INFO: Old stock: 50  
[2026-10-25 10:40:40] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:40] testing.INFO: New stock: 49  
[2026-10-25 10:40:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc087e00f5"} 
[2026-10-25 10:40:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc0881804f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:40] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:40:40] testing.INFO: Old stock: 50  
[2026-10-25 10:40:40] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:40] testing.INFO: New stock: 49  
[2026-10-25 10:40:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0881804f"} 
[2026-10-25 10:40:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addc08837685","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:40:40] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:40:40] testing.INFO: Old stock: 50  
[2026-10-25 10:40:40] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:40:40] testing.INFO: New stock: 49  
[2026-10-25 10:40:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc08837685"} 
[2026-10-25 10:41:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0a47870a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:08] testing.INFO: Old stock: 100  
[2026-10-25 10:41:08] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:08] testing.INFO: New stock: 96  
[2026-10-25 10:41:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a47870a"} 
[2026-10-25 10:41:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addc0a4b891e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:41:08] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:08] testing.INFO: Old stock: 96  
[2026-10-25 10:41:08] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:41:08] testing.INFO: New stock: 65  
[2026-10-25 10:41:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a4b891e"} 
[2026-10-25 10:41:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0a5720ea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:09] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:09] testing.INFO: Old stock: 100  
[2026-10-25 10:41:09] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:09] testing.INFO: New stock: 96  
[2026-10-25 10:41:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a5720ea"} 
[2026-10-25 10:41:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addc0a59a292","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:41:09] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:09] testing.INFO: Old stock: 96  
[2026-10-25 10:41:09] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:41:09] testing.INFO: New stock: 65  
[2026-10-25 10:41:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a59a292"} 
[2026-10-25 10:41:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0a621d93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:10] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:41:10] testing.INFO: Old stock: 100  
[2026-10-25 10:41:10] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:10] testing.INFO: New stock: 96  
[2026-10-25 10:41:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a621d93"} 
[2026-10-25 10:41:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addc0a640e92","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:41:10] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:41:10] testing.INFO: Old stock: 96  
[2026-10-25 10:41:10] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:41:10] testing.INFO: New stock: 65  
[2026-10-25 10:41:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a640e92"} 
[2026-10-25 10:41:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0a7bad60","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:41:11] testing.INFO: Old stock: 100  
[2026-10-25 10:41:11] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:11] testing.INFO: New stock: 96  
[2026-10-25 10:41:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a7bad60"} 
[2026-10-25 10:41:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6addc0a7e1b79","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:41:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:41:12] testing.INFO: Old stock: 96  
[2026-10-25 10:41:12] testing.INFO: Quantity deducted: 31  
[2026-10-25 10:41:12] testing.INFO: New stock: 65  
[2026-10-25 10:41:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0a7e1b79"} 
[2026-10-25 10:41:14] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 10:41:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0af303f2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:19] testing.INFO: Old stock: 200  
[2026-10-25 10:41:19] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:19] testing.INFO: New stock: 196  
[2026-10-25 10:41:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0af303f2"} 
[2026-10-25 10:41:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0af5a265","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:41:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:19] testing.INFO: Old stock: 196  
[2026-10-25 10:41:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:19] testing.INFO: New stock: 194  
[2026-10-25 10:41:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0af5a265"} 
[2026-10-25 10:41:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addc0af77d22","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 10:41:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0af9b5a6","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 10:41:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:19] testing.INFO: Old stock: 191  
[2026-10-25 10:41:19] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:19] testing.INFO: New stock: 190  
[2026-10-25 10:41:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0af9b5a6"} 
[2026-10-25 10:41:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0b28e990","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:22] testing.INFO: Old stock: 200  
[2026-10-25 10:41:22] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:22] testing.INFO: New stock: 196  
[2026-10-25 10:41:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0b28e990"} 
[2026-10-25 10:41:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0b2b88c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:22] testing.INFO: Old stock: 196  
[2026-10-25 10:41:22] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:22] testing.INFO: New stock: 194  
[2026-10-25 10:41:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0b2b88c6"} 
[2026-10-25 10:41:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0b39d10d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:41:23] testing.INFO: Old stock: 200  
[2026-10-25 10:41:23] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:23] testing.INFO: New stock: 196  
[2026-10-25 10:41:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0b39d10d"} 
[2026-10-25 10:41:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0b4c4bb5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:41:24] testing.INFO: Old stock: 196  
[2026-10-25 10:41:24] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:24] testing.INFO: New stock: 195  
[2026-10-25 10:41:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0b4c4bb5"} 
[2026-10-25 10:41:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0b879ab2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:28] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:41:28] testing.INFO: Old stock: 200  
[2026-10-25 10:41:28] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:41:28] testing.INFO: New stock: 196  
[2026-10-25 10:41:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0b879ab2"} 
[2026-10-25 10:41:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:11:28+02:00"}} 
[2026-10-25 10:41:29] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:41:29] testing.INFO: Old stock: 196  
[2026-10-25 10:41:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:29] testing.INFO: New stock: 195  
[2026-10-25 10:41:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 10:41:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addc0bd82ae6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:33] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:33] testing.INFO: Old stock: 10  
[2026-10-25 10:41:33] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:41:33] testing.INFO: New stock: 7  
[2026-10-25 10:41:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0bd82ae6"} 
[2026-10-25 10:41:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6addc0be0af93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:34] testing.INFO: Old stock: 10  
[2026-10-25 10:41:34] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:34] testing.INFO: New stock: 8  
[2026-10-25 10:41:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0be0af93"} 
[2026-10-25 10:41:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addc0be7d610","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:35] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6addc0bf00538","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6addc0bf5fff4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0bfc55e9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 10:41:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0c02c778","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 10:41:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0c11c0f1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:37] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:37] testing.INFO: Old stock: 10  
[2026-10-25 10:41:37] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:37] testing.INFO: New stock: 8  
[2026-10-25 10:41:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0c11c0f1"} 
[2026-10-25 10:41:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0c1d8d93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:38] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:38] testing.INFO: Old stock: 10  
[2026-10-25 10:41:38] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:38] testing.INFO: New stock: 8  
[2026-10-25 10:41:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0c1d8d93"} 
[2026-10-25 10:41:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0c2a71a2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:41:38] testing.INFO: Old stock: 10  
[2026-10-25 10:41:38] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:38] testing.INFO: New stock: 8  
[2026-10-25 10:41:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0c2a71a2"} 
[2026-10-25 10:41:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0c33e293","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:41:39] testing.INFO: Old stock: 3  
[2026-10-25 10:41:39] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:39] testing.INFO: New stock: 1  
[2026-10-25 10:41:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0c33e293"} 
[2026-10-25 10:41:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0c462594","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:40] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 10:41:40] testing.INFO: Old stock: 10  
[2026-10-25 10:41:40] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:40] testing.INFO: New stock: 8  
[2026-10-25 10:41:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0c462594"} 
[2026-10-25 10:41:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:41:41] testing.INFO: Old stock: 10  
[2026-10-25 10:41:41] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:41] testing.INFO: New stock: 8  
[2026-10-25 10:41:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:41:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:41:41] testing.INFO: Old stock: 10  
[2026-10-25 10:41:41] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:41] testing.INFO: New stock: 9  
[2026-10-25 10:41:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:41:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T08:41:00+02:00"}} 
[2026-10-25 10:41:42] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:41:42] testing.INFO: Old stock: 10  
[2026-10-25 10:41:42] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:42] testing.INFO: New stock: 9  
[2026-10-25 10:41:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:41:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T10:41:42+02:00"}} 
[2026-10-25 10:41:42] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:41:42] testing.INFO: Old stock: 10  
[2026-10-25 10:41:42] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:42] testing.INFO: New stock: 9  
[2026-10-25 10:41:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:41:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:41:43+02:00"}} 
[2026-10-25 10:41:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:41:43+02:00"}} 
[2026-10-25 10:41:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:41:43+02:00"}} 
[2026-10-25 10:41:44] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 10:41:44] testing.INFO: Old stock: 5  
[2026-10-25 10:41:44] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:41:44] testing.INFO: New stock: 2  
[2026-10-25 10:41:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:41:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T10:41:44+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 10:41:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T07:41:45+02:00"}} 
[2026-10-25 10:41:45] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 10:41:45] testing.INFO: Old stock: 10  
[2026-10-25 10:41:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:45] testing.INFO: New stock: 9  
[2026-10-25 10:41:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 10:41:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0d0c226b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:52] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-25 10:41:52] testing.INFO: Old stock: 50  
[2026-10-25 10:41:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:41:52] testing.INFO: New stock: 49  
[2026-10-25 10:41:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0d0c226b"} 
[2026-10-25 10:41:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6addc0d10f686","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:41:53] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-25 10:41:53] testing.INFO: Old stock: 50  
[2026-10-25 10:41:53] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:41:53] testing.INFO: New stock: 48  
[2026-10-25 10:41:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0d10f686"} 
[2026-10-25 10:41:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6addc0d13fab1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:53] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-25 10:41:53] testing.INFO: Old stock: 50  
[2026-10-25 10:41:53] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:41:53] testing.INFO: New stock: 47  
[2026-10-25 10:41:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0d13fab1"} 
[2026-10-25 10:41:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addc0d668ca2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:41:58] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 10:41:58] testing.INFO: Old stock: 16  
[2026-10-25 10:41:58] testing.INFO: Quantity deducted: 6  
[2026-10-25 10:41:58] testing.INFO: New stock: 10  
[2026-10-25 10:41:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0d668ca2"} 
[2026-10-25 10:42:02] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 10:42:02] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 10:42:02] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 10:42:02"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 10:42:02] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 10:42:06] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 10:42:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0dfcb593","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0e00ca22","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:08] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 10:42:08] testing.INFO: Old stock: 2  
[2026-10-25 10:42:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:08] testing.INFO: New stock: 1  
[2026-10-25 10:42:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0e00ca22"} 
[2026-10-25 10:42:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:10] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 10:42:10] testing.INFO: Old stock: 35  
[2026-10-25 10:42:10] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:42:10] testing.INFO: New stock: 33  
[2026-10-25 10:42:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 10:42:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addc0e366512","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:11] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 10:42:11] testing.INFO: Old stock: 13  
[2026-10-25 10:42:11] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:42:11] testing.INFO: New stock: 8  
[2026-10-25 10:42:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0e366512"} 
[2026-10-25 10:42:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc0e392cd7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:11] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 10:42:11] testing.INFO: Old stock: 8  
[2026-10-25 10:42:11] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:42:11] testing.INFO: New stock: 4  
[2026-10-25 10:42:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0e392cd7"} 
[2026-10-25 10:42:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6addc0e47412f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:12] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 10:42:12] testing.INFO: Old stock: 8  
[2026-10-25 10:42:12] testing.INFO: Quantity deducted: 6  
[2026-10-25 10:42:12] testing.INFO: New stock: 2  
[2026-10-25 10:42:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0e47412f"} 
[2026-10-25 10:42:14] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 10:42:14] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 10:42:14] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 10:42:14"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 10:42:14] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 10:42:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:27] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:42:27] testing.INFO: Old stock: 10  
[2026-10-25 10:42:27] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:27] testing.INFO: New stock: 9  
[2026-10-25 10:42:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 10:42:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:42:27] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:42:27] testing.INFO: Old stock: 10  
[2026-10-25 10:42:27] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:27] testing.INFO: New stock: 9  
[2026-10-25 10:42:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 10:42:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:28] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:42:28] testing.INFO: Old stock: 10  
[2026-10-25 10:42:28] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:28] testing.INFO: New stock: 9  
[2026-10-25 10:42:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 10:42:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:29] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:42:29] testing.INFO: Old stock: 10  
[2026-10-25 10:42:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:29] testing.INFO: New stock: 9  
[2026-10-25 10:42:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 10:42:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc0f5be8f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:29] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:42:29] testing.INFO: Old stock: 100  
[2026-10-25 10:42:29] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:29] testing.INFO: New stock: 99  
[2026-10-25 10:42:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0f5be8f0"} 
[2026-10-25 10:42:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0f5e6bf1","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 10:42:30] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:42:30] testing.INFO: Old stock: 99  
[2026-10-25 10:42:30] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:42:30] testing.INFO: New stock: 97  
[2026-10-25 10:42:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0f5e6bf1"} 
[2026-10-25 10:42:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addc0f60fc63","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 10:42:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0fc489c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:42:36] testing.INFO: Old stock: 50  
[2026-10-25 10:42:36] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:42:36] testing.INFO: New stock: 48  
[2026-10-25 10:42:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0fc489c2"} 
[2026-10-25 10:42:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6addc0fc95dca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:42:36] testing.INFO: Old stock: 48  
[2026-10-25 10:42:36] testing.INFO: Quantity deducted: 3  
[2026-10-25 10:42:36] testing.INFO: New stock: 45  
[2026-10-25 10:42:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0fc95dca"} 
[2026-10-25 10:42:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc0ffbbc83","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:39] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:42:39] testing.INFO: Old stock: 20  
[2026-10-25 10:42:39] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:42:39] testing.INFO: New stock: 18  
[2026-10-25 10:42:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc0ffbbc83"} 
[2026-10-25 10:42:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc1031b24e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:43] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:42:43] testing.INFO: Old stock: 50  
[2026-10-25 10:42:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:43] testing.INFO: New stock: 49  
[2026-10-25 10:42:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1031b24e"} 
[2026-10-25 10:42:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc10358524","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:43] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:42:43] testing.INFO: Old stock: 50  
[2026-10-25 10:42:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:43] testing.INFO: New stock: 49  
[2026-10-25 10:42:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10358524"} 
[2026-10-25 10:42:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addc1038e6bb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:43] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:42:43] testing.INFO: Old stock: 50  
[2026-10-25 10:42:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:43] testing.INFO: New stock: 49  
[2026-10-25 10:42:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1038e6bb"} 
[2026-10-25 10:42:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addc103b9ed2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:43] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 10:42:43] testing.INFO: Old stock: 50  
[2026-10-25 10:42:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:43] testing.INFO: New stock: 49  
[2026-10-25 10:42:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc103b9ed2"} 
[2026-10-25 10:42:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addc103e12e2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 10:42:44] testing.INFO: Old stock: 1  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 0  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc103e12e2"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addc10412ffc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 10:42:44] testing.INFO: Old stock: 50  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 49  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10412ffc"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addc1043789a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 10:42:44] testing.INFO: Old stock: 50  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 49  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1043789a"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addc1045b4d3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 10:42:44] testing.INFO: Old stock: 50  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 49  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1045b4d3"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addc1047e458","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 10:42:44] testing.INFO: Old stock: 50  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 49  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1047e458"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addc104a3296","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 10:42:44] testing.INFO: Old stock: 1  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 0  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc104a3296"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addc104c7df2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:44] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 10:42:44] testing.INFO: Old stock: 50  
[2026-10-25 10:42:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:44] testing.INFO: New stock: 49  
[2026-10-25 10:42:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc104c7df2"} 
[2026-10-25 10:42:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addc104eb14e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 10:42:45] testing.INFO: Old stock: 50  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 49  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc104eb14e"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addc10524c74","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 10:42:45] testing.INFO: Old stock: 50  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 49  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10524c74"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addc10546029","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 10:42:45] testing.INFO: Old stock: 50  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 49  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10546029"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addc1056461a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 10:42:45] testing.INFO: Old stock: 1  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 0  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1056461a"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addc10584d31","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 10:42:45] testing.INFO: Old stock: 50  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 49  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10584d31"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addc105a64bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 10:42:45] testing.INFO: Old stock: 50  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 49  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc105a64bc"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addc105c6898","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:45] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 10:42:45] testing.INFO: Old stock: 50  
[2026-10-25 10:42:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:45] testing.INFO: New stock: 49  
[2026-10-25 10:42:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc105c6898"} 
[2026-10-25 10:42:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addc105e6aa7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 10:42:46] testing.INFO: Old stock: 50  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 49  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc105e6aa7"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addc106135dd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 10:42:46] testing.INFO: Old stock: 1  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 0  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc106135dd"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addc10632751","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 10:42:46] testing.INFO: Old stock: 50  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 49  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10632751"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addc1065353d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 10:42:46] testing.INFO: Old stock: 50  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 49  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1065353d"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addc1067bc69","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 10:42:46] testing.INFO: Old stock: 50  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 49  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1067bc69"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addc1069df40","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 10:42:46] testing.INFO: Old stock: 50  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 49  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1069df40"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addc106bed83","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 10:42:46] testing.INFO: Old stock: 1  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 0  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc106bed83"} 
[2026-10-25 10:42:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addc106dc6db","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:46] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 10:42:46] testing.INFO: Old stock: 50  
[2026-10-25 10:42:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:46] testing.INFO: New stock: 49  
[2026-10-25 10:42:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc106dc6db"} 
[2026-10-25 10:42:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addc1070a1ca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:47] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 10:42:47] testing.INFO: Old stock: 50  
[2026-10-25 10:42:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:47] testing.INFO: New stock: 49  
[2026-10-25 10:42:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1070a1ca"} 
[2026-10-25 10:42:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addc1072a114","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:47] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 10:42:47] testing.INFO: Old stock: 50  
[2026-10-25 10:42:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:47] testing.INFO: New stock: 49  
[2026-10-25 10:42:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1072a114"} 
[2026-10-25 10:42:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addc10748160","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:47] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 10:42:47] testing.INFO: Old stock: 50  
[2026-10-25 10:42:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:47] testing.INFO: New stock: 49  
[2026-10-25 10:42:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10748160"} 
[2026-10-25 10:42:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addc10769ad1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:42:47] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 10:42:47] testing.INFO: Old stock: 1  
[2026-10-25 10:42:47] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:42:47] testing.INFO: New stock: 0  
[2026-10-25 10:42:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc10769ad1"} 
[2026-10-25 10:43:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc1339677c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:31] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:43:31] testing.INFO: Old stock: 50  
[2026-10-25 10:43:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:31] testing.INFO: New stock: 49  
[2026-10-25 10:43:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1339677c"} 
[2026-10-25 10:43:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc133c47ed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:31] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:43:31] testing.INFO: Old stock: 50  
[2026-10-25 10:43:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:31] testing.INFO: New stock: 49  
[2026-10-25 10:43:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc133c47ed"} 
[2026-10-25 10:43:31] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addc133e63f5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:31] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:43:31] testing.INFO: Old stock: 50  
[2026-10-25 10:43:31] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:31] testing.INFO: New stock: 49  
[2026-10-25 10:43:31] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc133e63f5"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6addc13408f2e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 10:43:32] testing.INFO: Old stock: 50  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 49  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc13408f2e"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6addc1342a2b1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 10:43:32] testing.INFO: Old stock: 1  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 0  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1342a2b1"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6addc1344a821","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 10:43:32] testing.INFO: Old stock: 50  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 49  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1344a821"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6addc1346bd3e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 10:43:32] testing.INFO: Old stock: 50  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 49  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1346bd3e"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6addc1348d7ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 10:43:32] testing.INFO: Old stock: 50  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 49  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1348d7ae"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6addc134aee93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 10:43:32] testing.INFO: Old stock: 50  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 49  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc134aee93"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6addc134cea8c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:32] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 10:43:32] testing.INFO: Old stock: 1  
[2026-10-25 10:43:32] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:32] testing.INFO: New stock: 0  
[2026-10-25 10:43:32] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc134cea8c"} 
[2026-10-25 10:43:32] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6addc134e81f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 10:43:33] testing.INFO: Old stock: 50  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 49  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc134e81f8"} 
[2026-10-25 10:43:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6addc13518c74","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 10:43:33] testing.INFO: Old stock: 50  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 49  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc13518c74"} 
[2026-10-25 10:43:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6addc1354089e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 10:43:33] testing.INFO: Old stock: 50  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 49  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1354089e"} 
[2026-10-25 10:43:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6addc135663f4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 10:43:33] testing.INFO: Old stock: 50  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 49  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc135663f4"} 
[2026-10-25 10:43:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6addc1358d0f6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 10:43:33] testing.INFO: Old stock: 1  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 0  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1358d0f6"} 
[2026-10-25 10:43:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6addc135b4f60","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 10:43:33] testing.INFO: Old stock: 50  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 49  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc135b4f60"} 
[2026-10-25 10:43:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6addc135d9c2f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:33] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 10:43:33] testing.INFO: Old stock: 50  
[2026-10-25 10:43:33] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:33] testing.INFO: New stock: 49  
[2026-10-25 10:43:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc135d9c2f"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6addc13603fd4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 10:43:34] testing.INFO: Old stock: 50  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 49  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc13603fd4"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6addc1361f774","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 10:43:34] testing.INFO: Old stock: 50  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 49  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1361f774"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6addc13640471","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 10:43:34] testing.INFO: Old stock: 1  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 0  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc13640471"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6addc1365dd3a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 10:43:34] testing.INFO: Old stock: 50  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 49  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1365dd3a"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6addc1367ec6e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 10:43:34] testing.INFO: Old stock: 50  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 49  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1367ec6e"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6addc1369f892","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 10:43:34] testing.INFO: Old stock: 50  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 49  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1369f892"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6addc136bfb8a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:34] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 10:43:34] testing.INFO: Old stock: 50  
[2026-10-25 10:43:34] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:34] testing.INFO: New stock: 49  
[2026-10-25 10:43:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc136bfb8a"} 
[2026-10-25 10:43:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6addc136e0031","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:35] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 10:43:35] testing.INFO: Old stock: 1  
[2026-10-25 10:43:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:35] testing.INFO: New stock: 0  
[2026-10-25 10:43:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc136e0031"} 
[2026-10-25 10:43:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6addc1370cb91","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:35] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 10:43:35] testing.INFO: Old stock: 50  
[2026-10-25 10:43:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:35] testing.INFO: New stock: 49  
[2026-10-25 10:43:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1370cb91"} 
[2026-10-25 10:43:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6addc1372b949","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:35] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 10:43:35] testing.INFO: Old stock: 50  
[2026-10-25 10:43:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:35] testing.INFO: New stock: 49  
[2026-10-25 10:43:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1372b949"} 
[2026-10-25 10:43:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6addc1374b6f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:35] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 10:43:35] testing.INFO: Old stock: 50  
[2026-10-25 10:43:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:35] testing.INFO: New stock: 49  
[2026-10-25 10:43:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1374b6f8"} 
[2026-10-25 10:43:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6addc1376cefb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:35] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 10:43:35] testing.INFO: Old stock: 50  
[2026-10-25 10:43:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:35] testing.INFO: New stock: 49  
[2026-10-25 10:43:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1376cefb"} 
[2026-10-25 10:43:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6addc1378d764","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:35] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 10:43:35] testing.INFO: Old stock: 1  
[2026-10-25 10:43:35] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:35] testing.INFO: New stock: 0  
[2026-10-25 10:43:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1378d764"} 
[2026-10-25 10:43:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc14138c26","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:45] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:43:45] testing.INFO: Old stock: 50  
[2026-10-25 10:43:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:45] testing.INFO: New stock: 49  
[2026-10-25 10:43:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc14138c26"} 
[2026-10-25 10:43:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc141634e6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:45] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:43:45] testing.INFO: Old stock: 50  
[2026-10-25 10:43:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:45] testing.INFO: New stock: 49  
[2026-10-25 10:43:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc141634e6"} 
[2026-10-25 10:43:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6addc14535974","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:49] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 10:43:49] testing.INFO: Old stock: 50  
[2026-10-25 10:43:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:49] testing.INFO: New stock: 49  
[2026-10-25 10:43:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc14535974"} 
[2026-10-25 10:43:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6addc14560247","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:49] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 10:43:49] testing.INFO: Old stock: 50  
[2026-10-25 10:43:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:49] testing.INFO: New stock: 49  
[2026-10-25 10:43:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc14560247"} 
[2026-10-25 10:43:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6addc1457de80","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:49] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 10:43:49] testing.INFO: Old stock: 50  
[2026-10-25 10:43:49] testing.INFO: Quantity deducted: 1  
[2026-10-25 10:43:49] testing.INFO: New stock: 49  
[2026-10-25 10:43:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1457de80"} 
[2026-10-25 10:43:57] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 10:43:57"}  
[2026-10-25 10:43:57] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 10:43:57] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 10:43:57] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 10:43:57] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 10:43:57] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 10:43:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addc14dadd5a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:57] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 10:43:57] testing.INFO: Old stock: 70  
[2026-10-25 10:43:57] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:43:57] testing.INFO: New stock: 65  
[2026-10-25 10:43:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc14dadd5a"} 
[2026-10-25 10:43:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 10:43:58] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 10:43:58] testing.INFO: Old stock: 62  
[2026-10-25 10:43:58] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:43:58] testing.INFO: New stock: 60  
[2026-10-25 10:43:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 10:43:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc14f7b32d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:43:59] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 10:43:59] testing.INFO: Old stock: 59  
[2026-10-25 10:43:59] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:43:59] testing.INFO: New stock: 55  
[2026-10-25 10:43:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc14f7b32d"} 
[2026-10-25 10:44:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc152db9ba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:03] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:44:03] testing.INFO: Old stock: 10  
[2026-10-25 10:44:03] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:44:03] testing.INFO: New stock: 6  
[2026-10-25 10:44:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc152db9ba"} 
[2026-10-25 10:44:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addc15377142","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:03] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:44:03] testing.INFO: Old stock: 10  
[2026-10-25 10:44:03] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:44:03] testing.INFO: New stock: 5  
[2026-10-25 10:44:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc15377142"} 
[2026-10-25 10:44:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc154176c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:04] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 10:44:04] testing.INFO: Old stock: 10  
[2026-10-25 10:44:04] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:44:04] testing.INFO: New stock: 6  
[2026-10-25 10:44:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc154176c6"} 
[2026-10-25 10:44:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6addc154def66","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:05] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 10:44:05] testing.INFO: Old stock: 5  
[2026-10-25 10:44:05] testing.INFO: Quantity deducted: 4  
[2026-10-25 10:44:05] testing.INFO: New stock: 1  
[2026-10-25 10:44:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc154def66"} 
[2026-10-25 10:44:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addc1557acba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:05] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 10:44:05] testing.INFO: Old stock: 10  
[2026-10-25 10:44:05] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:44:05] testing.INFO: New stock: 5  
[2026-10-25 10:44:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc1557acba"} 
[2026-10-25 10:44:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addc156518c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:06] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 10:44:06] testing.INFO: Old stock: 12  
[2026-10-25 10:44:06] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:44:06] testing.INFO: New stock: 7  
[2026-10-25 10:44:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc156518c1"} 
[2026-10-25 10:44:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6addc156c7872","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:06] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 10:44:06] testing.INFO: Old stock: 12  
[2026-10-25 10:44:06] testing.INFO: Quantity deducted: 5  
[2026-10-25 10:44:06] testing.INFO: New stock: 7  
[2026-10-25 10:44:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc156c7872"} 
[2026-10-25 10:44:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc15f88a31","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 10:44:15] testing.INFO: Old stock: 10  
[2026-10-25 10:44:15] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:44:15] testing.INFO: New stock: 8  
[2026-10-25 10:44:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc15f88a31"} 
[2026-10-25 10:44:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc163cd1f2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:19] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 10:44:19] testing.INFO: Old stock: 10  
[2026-10-25 10:44:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:44:19] testing.INFO: New stock: 8  
[2026-10-25 10:44:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc163cd1f2"} 
[2026-10-25 10:44:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc16737258","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 10:44:23] testing.INFO: Old stock: 10  
[2026-10-25 10:44:23] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:44:23] testing.INFO: New stock: 8  
[2026-10-25 10:44:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc16737258"} 
[2026-10-25 10:44:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6addc16a51890","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 10:44:26] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 10:44:26] testing.INFO: Old stock: 10  
[2026-10-25 10:44:26] testing.INFO: Quantity deducted: 2  
[2026-10-25 10:44:26] testing.INFO: New stock: 8  
[2026-10-25 10:44:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6addc16a51890"} 
[2026-10-25 16:32:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade12ec59206","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:12] testing.INFO: Old stock: 10  
[2026-10-25 16:32:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:32:12] testing.INFO: New stock: 9  
[2026-10-25 16:32:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade12ec59206"} 
[2026-10-25 16:32:15] testing.ERROR: Error E80A4322: SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}

[previous exception] [object] (Exception(code: 0): SQLSTATE[42S22] at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}
"} 
[2026-10-25 16:32:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade13019b4e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:33] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:33] testing.INFO: Old stock: 100  
[2026-10-25 16:32:33] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:33] testing.INFO: New stock: 96  
[2026-10-25 16:32:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13019b4e3"} 
[2026-10-25 16:32:33] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade1301c18d1","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:32:33] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:33] testing.INFO: Old stock: 96  
[2026-10-25 16:32:33] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:32:33] testing.INFO: New stock: 65  
[2026-10-25 16:32:33] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1301c18d1"} 
[2026-10-25 16:32:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade130265577","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:32:34] testing.INFO: Old stock: 100  
[2026-10-25 16:32:34] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:34] testing.INFO: New stock: 96  
[2026-10-25 16:32:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130265577"} 
[2026-10-25 16:32:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade130287d47","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:32:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:32:34] testing.INFO: Old stock: 96  
[2026-10-25 16:32:34] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:32:34] testing.INFO: New stock: 65  
[2026-10-25 16:32:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130287d47"} 
[2026-10-25 16:32:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade130310921","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:32:35] testing.INFO: Old stock: 100  
[2026-10-25 16:32:35] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:35] testing.INFO: New stock: 96  
[2026-10-25 16:32:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130310921"} 
[2026-10-25 16:32:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade1303342db","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:32:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:32:35] testing.INFO: Old stock: 96  
[2026-10-25 16:32:35] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:32:35] testing.INFO: New stock: 65  
[2026-10-25 16:32:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1303342db"} 
[2026-10-25 16:32:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade13046ce30","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:36] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:32:36] testing.INFO: Old stock: 100  
[2026-10-25 16:32:36] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:36] testing.INFO: New stock: 96  
[2026-10-25 16:32:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13046ce30"} 
[2026-10-25 16:32:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade130496c2a","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:32:36] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:32:36] testing.INFO: Old stock: 96  
[2026-10-25 16:32:36] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:32:36] testing.INFO: New stock: 65  
[2026-10-25 16:32:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130496c2a"} 
[2026-10-25 16:32:38] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 16:32:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade130b1cdb7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:43] testing.INFO: Old stock: 200  
[2026-10-25 16:32:43] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:43] testing.INFO: New stock: 196  
[2026-10-25 16:32:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130b1cdb7"} 
[2026-10-25 16:32:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade130b42352","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:32:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:43] testing.INFO: Old stock: 196  
[2026-10-25 16:32:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:43] testing.INFO: New stock: 194  
[2026-10-25 16:32:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130b42352"} 
[2026-10-25 16:32:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade130b5be56","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 16:32:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade130b7a3ed","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 16:32:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:43] testing.INFO: Old stock: 191  
[2026-10-25 16:32:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:32:43] testing.INFO: New stock: 190  
[2026-10-25 16:32:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130b7a3ed"} 
[2026-10-25 16:32:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade130e5743c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:46] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:32:46] testing.INFO: Old stock: 200  
[2026-10-25 16:32:46] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:46] testing.INFO: New stock: 196  
[2026-10-25 16:32:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130e5743c"} 
[2026-10-25 16:32:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade130e7c3bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:46] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:32:46] testing.INFO: Old stock: 196  
[2026-10-25 16:32:46] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:46] testing.INFO: New stock: 194  
[2026-10-25 16:32:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130e7c3bc"} 
[2026-10-25 16:32:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade130f15bc3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:47] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:32:47] testing.INFO: Old stock: 200  
[2026-10-25 16:32:47] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:47] testing.INFO: New stock: 196  
[2026-10-25 16:32:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130f15bc3"} 
[2026-10-25 16:32:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade130ff2b3e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:48] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:32:48] testing.INFO: Old stock: 196  
[2026-10-25 16:32:48] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:32:48] testing.INFO: New stock: 195  
[2026-10-25 16:32:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade130ff2b3e"} 
[2026-10-25 16:32:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade1312ede65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:51] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:32:51] testing.INFO: Old stock: 200  
[2026-10-25 16:32:51] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:32:51] testing.INFO: New stock: 196  
[2026-10-25 16:32:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1312ede65"} 
[2026-10-25 16:32:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:02:51+02:00"}} 
[2026-10-25 16:32:52] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:32:52] testing.INFO: Old stock: 196  
[2026-10-25 16:32:52] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:32:52] testing.INFO: New stock: 195  
[2026-10-25 16:32:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 16:32:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade1316d1630","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:54] testing.INFO: Old stock: 10  
[2026-10-25 16:32:54] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:32:54] testing.INFO: New stock: 7  
[2026-10-25 16:32:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1316d1630"} 
[2026-10-25 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ade1317283b8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:32:55] testing.INFO: Old stock: 10  
[2026-10-25 16:32:55] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:55] testing.INFO: New stock: 8  
[2026-10-25 16:32:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1317283b8"} 
[2026-10-25 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade131777dcc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:55] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade1317ba009","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ade13180960c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1318459b2","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 16:32:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13189851b","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 16:32:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1319481e5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:57] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:32:57] testing.INFO: Old stock: 10  
[2026-10-25 16:32:57] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:57] testing.INFO: New stock: 8  
[2026-10-25 16:32:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1319481e5"} 
[2026-10-25 16:32:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1319ebea2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:58] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:32:58] testing.INFO: Old stock: 10  
[2026-10-25 16:32:58] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:58] testing.INFO: New stock: 8  
[2026-10-25 16:32:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1319ebea2"} 
[2026-10-25 16:32:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade131a91d62","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:58] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:32:58] testing.INFO: Old stock: 10  
[2026-10-25 16:32:58] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:58] testing.INFO: New stock: 8  
[2026-10-25 16:32:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade131a91d62"} 
[2026-10-25 16:32:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade131b1d43d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:32:59] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:32:59] testing.INFO: Old stock: 3  
[2026-10-25 16:32:59] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:32:59] testing.INFO: New stock: 1  
[2026-10-25 16:32:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade131b1d43d"} 
[2026-10-25 16:33:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade131c0f16e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:00] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 16:33:00] testing.INFO: Old stock: 10  
[2026-10-25 16:33:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:00] testing.INFO: New stock: 8  
[2026-10-25 16:33:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade131c0f16e"} 
[2026-10-25 16:33:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:00] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:33:00] testing.INFO: Old stock: 10  
[2026-10-25 16:33:00] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:00] testing.INFO: New stock: 8  
[2026-10-25 16:33:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:33:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:01] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:33:01] testing.INFO: Old stock: 10  
[2026-10-25 16:33:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:01] testing.INFO: New stock: 9  
[2026-10-25 16:33:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:33:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T14:33:00+02:00"}} 
[2026-10-25 16:33:01] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:33:01] testing.INFO: Old stock: 10  
[2026-10-25 16:33:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:01] testing.INFO: New stock: 9  
[2026-10-25 16:33:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:33:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T16:33:01+02:00"}} 
[2026-10-25 16:33:01] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:33:01] testing.INFO: Old stock: 10  
[2026-10-25 16:33:01] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:01] testing.INFO: New stock: 9  
[2026-10-25 16:33:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:33:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:33:02+02:00"}} 
[2026-10-25 16:33:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:33:02+02:00"}} 
[2026-10-25 16:33:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:33:02+02:00"}} 
[2026-10-25 16:33:03] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 16:33:03] testing.INFO: Old stock: 5  
[2026-10-25 16:33:03] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:33:03] testing.INFO: New stock: 2  
[2026-10-25 16:33:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:33:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:33:03+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 16:33:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T13:33:04+02:00"}} 
[2026-10-25 16:33:04] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 16:33:04] testing.INFO: Old stock: 10  
[2026-10-25 16:33:04] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:04] testing.INFO: New stock: 9  
[2026-10-25 16:33:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:33:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade1327a8e5a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:11] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-25 16:33:11] testing.INFO: Old stock: 50  
[2026-10-25 16:33:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:11] testing.INFO: New stock: 49  
[2026-10-25 16:33:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1327a8e5a"} 
[2026-10-25 16:33:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6ade1327cee6b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:33:11] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-25 16:33:11] testing.INFO: Old stock: 50  
[2026-10-25 16:33:11] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:11] testing.INFO: New stock: 48  
[2026-10-25 16:33:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1327cee6b"} 
[2026-10-25 16:33:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6ade1327ebf34","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:12] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-25 16:33:12] testing.INFO: Old stock: 50  
[2026-10-25 16:33:12] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:33:12] testing.INFO: New stock: 47  
[2026-10-25 16:33:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1327ebf34"} 
[2026-10-25 16:33:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ade132c18368","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:16] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 16:33:16] testing.INFO: Old stock: 16  
[2026-10-25 16:33:16] testing.INFO: Quantity deducted: 6  
[2026-10-25 16:33:16] testing.INFO: New stock: 10  
[2026-10-25 16:33:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade132c18368"} 
[2026-10-25 16:33:19] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 16:33:19] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 16:33:19] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 16:33:19"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 16:33:19] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 16:33:22] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 16:33:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade133338ece","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13335b4e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:23] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 16:33:23] testing.INFO: Old stock: 2  
[2026-10-25 16:33:23] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:23] testing.INFO: New stock: 1  
[2026-10-25 16:33:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13335b4e3"} 
[2026-10-25 16:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:25] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 16:33:25] testing.INFO: Old stock: 35  
[2026-10-25 16:33:25] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:25] testing.INFO: New stock: 33  
[2026-10-25 16:33:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 16:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade1335b0fbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:25] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 16:33:25] testing.INFO: Old stock: 13  
[2026-10-25 16:33:25] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:33:25] testing.INFO: New stock: 8  
[2026-10-25 16:33:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1335b0fbe"} 
[2026-10-25 16:33:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade1335d85b8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:25] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 16:33:25] testing.INFO: Old stock: 8  
[2026-10-25 16:33:25] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:33:25] testing.INFO: New stock: 4  
[2026-10-25 16:33:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1335d85b8"} 
[2026-10-25 16:33:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ade1336d640d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:27] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 16:33:27] testing.INFO: Old stock: 8  
[2026-10-25 16:33:27] testing.INFO: Quantity deducted: 6  
[2026-10-25 16:33:27] testing.INFO: New stock: 2  
[2026-10-25 16:33:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1336d640d"} 
[2026-10-25 16:33:28] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 16:33:28] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 16:33:28] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 16:33:28"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 16:33:28] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 16:33:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:33:38] testing.INFO: Old stock: 10  
[2026-10-25 16:33:38] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:38] testing.INFO: New stock: 9  
[2026-10-25 16:33:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 16:33:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:33:39] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:33:39] testing.INFO: Old stock: 10  
[2026-10-25 16:33:39] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:39] testing.INFO: New stock: 9  
[2026-10-25 16:33:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 16:33:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:33:40] testing.INFO: Old stock: 10  
[2026-10-25 16:33:40] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:40] testing.INFO: New stock: 9  
[2026-10-25 16:33:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 16:33:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:33:40] testing.INFO: Old stock: 10  
[2026-10-25 16:33:40] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:40] testing.INFO: New stock: 9  
[2026-10-25 16:33:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 16:33:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade1344e5fe6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:33:41] testing.INFO: Old stock: 100  
[2026-10-25 16:33:41] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:41] testing.INFO: New stock: 99  
[2026-10-25 16:33:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1344e5fe6"} 
[2026-10-25 16:33:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade134517295","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:33:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:33:41] testing.INFO: Old stock: 99  
[2026-10-25 16:33:41] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:41] testing.INFO: New stock: 97  
[2026-10-25 16:33:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134517295"} 
[2026-10-25 16:33:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade13452e7b3","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 16:33:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade134716a97","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:43] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:33:43] testing.INFO: Old stock: 50  
[2026-10-25 16:33:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:43] testing.INFO: New stock: 48  
[2026-10-25 16:33:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134716a97"} 
[2026-10-25 16:33:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade1347276cf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:43] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:33:43] testing.INFO: Old stock: 48  
[2026-10-25 16:33:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:33:43] testing.INFO: New stock: 45  
[2026-10-25 16:33:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1347276cf"} 
[2026-10-25 16:33:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1347c839c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:33:43] testing.INFO: Old stock: 20  
[2026-10-25 16:33:43] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:33:43] testing.INFO: New stock: 18  
[2026-10-25 16:33:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1347c839c"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13489c3fb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13489c3fb"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade1348aa2e1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348aa2e1"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6ade1348b15d0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348b15d0"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6ade1348b7d9d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348b7d9d"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6ade1348be8a5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 16:33:44] testing.INFO: Old stock: 1  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 0  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348be8a5"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6ade1348c6754","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348c6754"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6ade1348cd519","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348cd519"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6ade1348d3b35","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348d3b35"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6ade1348da3ab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348da3ab"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6ade1348e0cf2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 16:33:44] testing.INFO: Old stock: 1  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 0  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348e0cf2"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6ade1348e710d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:44] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 16:33:44] testing.INFO: Old stock: 50  
[2026-10-25 16:33:44] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:44] testing.INFO: New stock: 49  
[2026-10-25 16:33:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348e710d"} 
[2026-10-25 16:33:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6ade1348ef486","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1348ef486"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6ade1349034a0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1349034a0"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6ade13490d515","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13490d515"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6ade1349189f9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 16:33:45] testing.INFO: Old stock: 1  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 0  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1349189f9"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6ade134920bc5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134920bc5"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6ade134928875","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134928875"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6ade1349300eb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1349300eb"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6ade13493a1a7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13493a1a7"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6ade1349466e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 16:33:45] testing.INFO: Old stock: 1  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 0  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1349466e0"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6ade13494e1d3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13494e1d3"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6ade13495ce0c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13495ce0c"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6ade134967e98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134967e98"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6ade134970d85","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134970d85"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6ade1349787cb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 16:33:45] testing.INFO: Old stock: 1  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 0  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1349787cb"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6ade13497f947","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13497f947"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6ade134986652","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade134986652"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6ade13498f081","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13498f081"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6ade13499be44","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 16:33:45] testing.INFO: Old stock: 50  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 49  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13499be44"} 
[2026-10-25 16:33:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6ade1349a6ac0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:45] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 16:33:45] testing.INFO: Old stock: 1  
[2026-10-25 16:33:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:45] testing.INFO: New stock: 0  
[2026-10-25 16:33:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1349a6ac0"} 
[2026-10-25 16:33:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade1352f07b9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1352f07b9"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade135306686","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135306686"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6ade13530cdd8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13530cdd8"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6ade135313ddd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135313ddd"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6ade13531b3cd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 16:33:55] testing.INFO: Old stock: 1  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 0  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13531b3cd"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6ade135321c05","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135321c05"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6ade13532800c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13532800c"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6ade13532f347","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13532f347"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6ade135336542","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135336542"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6ade13533dbe7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 16:33:55] testing.INFO: Old stock: 1  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 0  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13533dbe7"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6ade135344468","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135344468"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6ade13534af86","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13534af86"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6ade135351b6d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135351b6d"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6ade135359221","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135359221"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6ade13535fde2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 16:33:55] testing.INFO: Old stock: 1  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 0  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13535fde2"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6ade1353673de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353673de"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6ade13536ddc0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13536ddc0"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6ade1353749e8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353749e8"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6ade13537b70d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13537b70d"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6ade135381cc7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 16:33:55] testing.INFO: Old stock: 1  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 0  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135381cc7"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6ade13538884f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13538884f"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6ade13538fc7e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13538fc7e"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6ade1353974a0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353974a0"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6ade13539e31f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13539e31f"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6ade1353a4f6d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 16:33:55] testing.INFO: Old stock: 1  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 0  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353a4f6d"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6ade1353ac2f4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353ac2f4"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6ade1353b3ca5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353b3ca5"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6ade1353bb416","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353bb416"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6ade1353c22a8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 16:33:55] testing.INFO: Old stock: 50  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 49  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353c22a8"} 
[2026-10-25 16:33:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6ade1353c90f0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:55] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 16:33:55] testing.INFO: Old stock: 1  
[2026-10-25 16:33:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:55] testing.INFO: New stock: 0  
[2026-10-25 16:33:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1353c90f0"} 
[2026-10-25 16:33:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13560afde","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:58] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:33:58] testing.INFO: Old stock: 50  
[2026-10-25 16:33:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:58] testing.INFO: New stock: 49  
[2026-10-25 16:33:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13560afde"} 
[2026-10-25 16:33:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade135615de1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:58] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:33:58] testing.INFO: Old stock: 50  
[2026-10-25 16:33:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:58] testing.INFO: New stock: 49  
[2026-10-25 16:33:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135615de1"} 
[2026-10-25 16:33:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade1356f2708","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:59] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:33:59] testing.INFO: Old stock: 50  
[2026-10-25 16:33:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:59] testing.INFO: New stock: 49  
[2026-10-25 16:33:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1356f2708"} 
[2026-10-25 16:33:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade13570770d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:59] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:33:59] testing.INFO: Old stock: 50  
[2026-10-25 16:33:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:59] testing.INFO: New stock: 49  
[2026-10-25 16:33:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13570770d"} 
[2026-10-25 16:33:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6ade13570e6dc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:33:59] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 16:33:59] testing.INFO: Old stock: 50  
[2026-10-25 16:33:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:33:59] testing.INFO: New stock: 49  
[2026-10-25 16:33:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13570e6dc"} 
[2026-10-25 16:34:00] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 16:34:00"}  
[2026-10-25 16:34:00] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 16:34:00] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 16:34:00] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 16:34:00] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 16:34:00] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 16:34:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade1358bffb8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:00] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:00] testing.INFO: Old stock: 10  
[2026-10-25 16:34:00] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:00] testing.INFO: New stock: 9  
[2026-10-25 16:34:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1358bffb8"} 
[2026-10-25 16:34:01] testing.ERROR: Error 523DB09D: SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}

[previous exception] [object] (Exception(code: 0): SQLSTATE[42S22] at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}
"} 
[2026-10-25 16:34:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade135a213e1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:02] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 16:34:02] testing.INFO: Old stock: 70  
[2026-10-25 16:34:02] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:34:02] testing.INFO: New stock: 65  
[2026-10-25 16:34:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135a213e1"} 
[2026-10-25 16:34:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 16:34:02] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 16:34:02] testing.INFO: Old stock: 62  
[2026-10-25 16:34:02] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:02] testing.INFO: New stock: 60  
[2026-10-25 16:34:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 16:34:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade135a803de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:02] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 16:34:02] testing.INFO: Old stock: 59  
[2026-10-25 16:34:02] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:02] testing.INFO: New stock: 55  
[2026-10-25 16:34:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135a803de"} 
[2026-10-25 16:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade135b4262c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:03] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:03] testing.INFO: Old stock: 10  
[2026-10-25 16:34:03] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:03] testing.INFO: New stock: 6  
[2026-10-25 16:34:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135b4262c"} 
[2026-10-25 16:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade135b633ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:03] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:03] testing.INFO: Old stock: 10  
[2026-10-25 16:34:03] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:34:03] testing.INFO: New stock: 5  
[2026-10-25 16:34:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135b633ce"} 
[2026-10-25 16:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade135b86072","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:03] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 16:34:03] testing.INFO: Old stock: 10  
[2026-10-25 16:34:03] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:03] testing.INFO: New stock: 6  
[2026-10-25 16:34:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135b86072"} 
[2026-10-25 16:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade135bb2003","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:03] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 16:34:03] testing.INFO: Old stock: 5  
[2026-10-25 16:34:03] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:03] testing.INFO: New stock: 1  
[2026-10-25 16:34:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135bb2003"} 
[2026-10-25 16:34:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade135bd1925","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:03] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 16:34:03] testing.INFO: Old stock: 10  
[2026-10-25 16:34:03] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:34:03] testing.INFO: New stock: 5  
[2026-10-25 16:34:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135bd1925"} 
[2026-10-25 16:34:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade135c18527","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:04] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 16:34:04] testing.INFO: Old stock: 12  
[2026-10-25 16:34:04] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:34:04] testing.INFO: New stock: 7  
[2026-10-25 16:34:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135c18527"} 
[2026-10-25 16:34:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade135c33275","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:04] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 16:34:04] testing.INFO: Old stock: 12  
[2026-10-25 16:34:04] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:34:04] testing.INFO: New stock: 7  
[2026-10-25 16:34:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135c33275"} 
[2026-10-25 16:34:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade135e39016","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:06] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:06] testing.INFO: Old stock: 10  
[2026-10-25 16:34:06] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:06] testing.INFO: New stock: 8  
[2026-10-25 16:34:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135e39016"} 
[2026-10-25 16:34:07] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade135f5265d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:07] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:07] testing.INFO: Old stock: 10  
[2026-10-25 16:34:07] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:07] testing.INFO: New stock: 8  
[2026-10-25 16:34:07] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade135f5265d"} 
[2026-10-25 16:34:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13602403b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:08] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:08] testing.INFO: Old stock: 10  
[2026-10-25 16:34:08] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:08] testing.INFO: New stock: 8  
[2026-10-25 16:34:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13602403b"} 
[2026-10-25 16:34:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1360ee90b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:09] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:09] testing.INFO: Old stock: 10  
[2026-10-25 16:34:09] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:09] testing.INFO: New stock: 8  
[2026-10-25 16:34:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1360ee90b"} 
[2026-10-25 16:34:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade137eda476","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:38] testing.INFO: Old stock: 100  
[2026-10-25 16:34:38] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:38] testing.INFO: New stock: 96  
[2026-10-25 16:34:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137eda476"} 
[2026-10-25 16:34:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade137ee5c69","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:38] testing.INFO: Old stock: 96  
[2026-10-25 16:34:38] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:34:38] testing.INFO: New stock: 65  
[2026-10-25 16:34:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137ee5c69"} 
[2026-10-25 16:34:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade137f152e2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:39] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:39] testing.INFO: Old stock: 100  
[2026-10-25 16:34:39] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:39] testing.INFO: New stock: 96  
[2026-10-25 16:34:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137f152e2"} 
[2026-10-25 16:34:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade137f1d9cc","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:39] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:39] testing.INFO: Old stock: 96  
[2026-10-25 16:34:39] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:34:39] testing.INFO: New stock: 65  
[2026-10-25 16:34:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137f1d9cc"} 
[2026-10-25 16:34:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade137f37a89","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:39] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:39] testing.INFO: Old stock: 100  
[2026-10-25 16:34:39] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:39] testing.INFO: New stock: 96  
[2026-10-25 16:34:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137f37a89"} 
[2026-10-25 16:34:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade137f3fb85","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:39] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:39] testing.INFO: Old stock: 96  
[2026-10-25 16:34:39] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:34:39] testing.INFO: New stock: 65  
[2026-10-25 16:34:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137f3fb85"} 
[2026-10-25 16:34:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade137f9221b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:39] testing.INFO: Old stock: 100  
[2026-10-25 16:34:39] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:39] testing.INFO: New stock: 96  
[2026-10-25 16:34:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137f9221b"} 
[2026-10-25 16:34:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6ade137f9a21e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:39] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:39] testing.INFO: Old stock: 96  
[2026-10-25 16:34:39] testing.INFO: Quantity deducted: 31  
[2026-10-25 16:34:39] testing.INFO: New stock: 65  
[2026-10-25 16:34:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade137f9a21e"} 
[2026-10-25 16:34:40] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-25 16:34:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade1381253a2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:41] testing.INFO: Old stock: 200  
[2026-10-25 16:34:41] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:41] testing.INFO: New stock: 196  
[2026-10-25 16:34:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1381253a2"} 
[2026-10-25 16:34:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13812fc4d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:41] testing.INFO: Old stock: 196  
[2026-10-25 16:34:41] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:41] testing.INFO: New stock: 194  
[2026-10-25 16:34:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13812fc4d"} 
[2026-10-25 16:34:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade13813647f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 16:34:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13813d04a","payment_method":"card","payment_status":"paid"}} 
[2026-10-25 16:34:41] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:41] testing.INFO: Old stock: 191  
[2026-10-25 16:34:41] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:41] testing.INFO: New stock: 190  
[2026-10-25 16:34:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13813d04a"} 
[2026-10-25 16:34:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade1381d8ac7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:41] testing.INFO: Old stock: 200  
[2026-10-25 16:34:41] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:41] testing.INFO: New stock: 196  
[2026-10-25 16:34:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1381d8ac7"} 
[2026-10-25 16:34:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1381e1a7f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:41] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:41] testing.INFO: Old stock: 196  
[2026-10-25 16:34:41] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:41] testing.INFO: New stock: 194  
[2026-10-25 16:34:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1381e1a7f"} 
[2026-10-25 16:34:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade1382154f2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:42] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:42] testing.INFO: Old stock: 200  
[2026-10-25 16:34:42] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:42] testing.INFO: New stock: 196  
[2026-10-25 16:34:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1382154f2"} 
[2026-10-25 16:34:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade138252652","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:42] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:42] testing.INFO: Old stock: 196  
[2026-10-25 16:34:42] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:42] testing.INFO: New stock: 195  
[2026-10-25 16:34:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138252652"} 
[2026-10-25 16:34:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade1382f3d55","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:43] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:43] testing.INFO: Old stock: 200  
[2026-10-25 16:34:43] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:43] testing.INFO: New stock: 196  
[2026-10-25 16:34:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1382f3d55"} 
[2026-10-25 16:34:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:04:43+02:00"}} 
[2026-10-25 16:34:43] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:43] testing.INFO: Old stock: 196  
[2026-10-25 16:34:43] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:43] testing.INFO: New stock: 195  
[2026-10-25 16:34:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-25 16:34:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade1383dc15e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:43] testing.INFO: Old stock: 10  
[2026-10-25 16:34:43] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:34:43] testing.INFO: New stock: 7  
[2026-10-25 16:34:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1383dc15e"} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6ade138400250","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:44] testing.INFO: Old stock: 10  
[2026-10-25 16:34:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:44] testing.INFO: New stock: 8  
[2026-10-25 16:34:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138400250"} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade138419079","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade13842b019","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6ade13843d519","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13844f4a6","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13846134e","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade138491d4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:44] testing.INFO: Old stock: 10  
[2026-10-25 16:34:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:44] testing.INFO: New stock: 8  
[2026-10-25 16:34:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138491d4c"} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1384bb8ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:44] testing.INFO: Old stock: 10  
[2026-10-25 16:34:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:44] testing.INFO: New stock: 8  
[2026-10-25 16:34:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1384bb8ae"} 
[2026-10-25 16:34:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1384e0396","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:44] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:44] testing.INFO: Old stock: 10  
[2026-10-25 16:34:44] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:44] testing.INFO: New stock: 8  
[2026-10-25 16:34:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1384e0396"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13850cc64","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:45] testing.INFO: Old stock: 3  
[2026-10-25 16:34:45] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:45] testing.INFO: New stock: 1  
[2026-10-25 16:34:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13850cc64"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade138548ac0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:45] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-25 16:34:45] testing.INFO: Old stock: 10  
[2026-10-25 16:34:45] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:45] testing.INFO: New stock: 8  
[2026-10-25 16:34:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138548ac0"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:45] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:45] testing.INFO: Old stock: 10  
[2026-10-25 16:34:45] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:45] testing.INFO: New stock: 8  
[2026-10-25 16:34:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:45] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:45] testing.INFO: Old stock: 10  
[2026-10-25 16:34:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:45] testing.INFO: New stock: 9  
[2026-10-25 16:34:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T14:34:00+02:00"}} 
[2026-10-25 16:34:45] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:45] testing.INFO: Old stock: 10  
[2026-10-25 16:34:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:45] testing.INFO: New stock: 9  
[2026-10-25 16:34:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-28T16:34:45+02:00"}} 
[2026-10-25 16:34:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:45] testing.INFO: Old stock: 10  
[2026-10-25 16:34:45] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:45] testing.INFO: New stock: 9  
[2026-10-25 16:34:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:34:45+02:00"}} 
[2026-10-25 16:34:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:34:45+02:00"}} 
[2026-10-25 16:34:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:34:45+02:00"}} 
[2026-10-25 16:34:46] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 16:34:46] testing.INFO: Old stock: 5  
[2026-10-25 16:34:46] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:34:46] testing.INFO: New stock: 2  
[2026-10-25 16:34:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:34:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T16:34:46+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-25 16:34:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-25T13:34:46+02:00"}} 
[2026-10-25 16:34:46] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-25 16:34:46] testing.INFO: Old stock: 10  
[2026-10-25 16:34:46] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:46] testing.INFO: New stock: 9  
[2026-10-25 16:34:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-25 16:34:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13882e341","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:48] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-25 16:34:48] testing.INFO: Old stock: 50  
[2026-10-25 16:34:48] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:48] testing.INFO: New stock: 49  
[2026-10-25 16:34:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13882e341"} 
[2026-10-25 16:34:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6ade138836f1d","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:48] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-25 16:34:48] testing.INFO: Old stock: 50  
[2026-10-25 16:34:48] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:48] testing.INFO: New stock: 48  
[2026-10-25 16:34:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138836f1d"} 
[2026-10-25 16:34:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6ade13883dab1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:48] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-25 16:34:48] testing.INFO: Old stock: 50  
[2026-10-25 16:34:48] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:34:48] testing.INFO: New stock: 47  
[2026-10-25 16:34:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13883dab1"} 
[2026-10-25 16:34:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ade13892b8ac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:49] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 16:34:49] testing.INFO: Old stock: 16  
[2026-10-25 16:34:49] testing.INFO: Quantity deducted: 6  
[2026-10-25 16:34:49] testing.INFO: New stock: 10  
[2026-10-25 16:34:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13892b8ac"} 
[2026-10-25 16:34:50] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-25 16:34:50] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 16:34:50] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-25 16:34:50"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 16:34:50] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-25 16:34:50] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-24"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 16:34:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade138ae9646","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade138af1ac3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:51] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-25 16:34:51] testing.INFO: Old stock: 2  
[2026-10-25 16:34:51] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:51] testing.INFO: New stock: 1  
[2026-10-25 16:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138af1ac3"} 
[2026-10-25 16:34:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:51] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-25 16:34:51] testing.INFO: Old stock: 35  
[2026-10-25 16:34:51] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:51] testing.INFO: New stock: 33  
[2026-10-25 16:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-25 16:34:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade138b9f513","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:51] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 16:34:51] testing.INFO: Old stock: 13  
[2026-10-25 16:34:51] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:34:51] testing.INFO: New stock: 8  
[2026-10-25 16:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138b9f513"} 
[2026-10-25 16:34:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade138ba928e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:51] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-25 16:34:51] testing.INFO: Old stock: 8  
[2026-10-25 16:34:51] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:34:51] testing.INFO: New stock: 4  
[2026-10-25 16:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138ba928e"} 
[2026-10-25 16:34:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6ade138be2686","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:51] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-25 16:34:51] testing.INFO: Old stock: 8  
[2026-10-25 16:34:51] testing.INFO: Quantity deducted: 6  
[2026-10-25 16:34:51] testing.INFO: New stock: 2  
[2026-10-25 16:34:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138be2686"} 
[2026-10-25 16:34:52] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-25 16:34:52] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-25 16:34:52] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-25 16:34:52"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-25 16:34:52] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-25 16:34:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:54] testing.INFO: Old stock: 10  
[2026-10-25 16:34:54] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:54] testing.INFO: New stock: 9  
[2026-10-25 16:34:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-25 16:34:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:55] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:55] testing.INFO: Old stock: 10  
[2026-10-25 16:34:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:55] testing.INFO: New stock: 9  
[2026-10-25 16:34:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-25 16:34:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:55] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:55] testing.INFO: Old stock: 10  
[2026-10-25 16:34:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:55] testing.INFO: New stock: 9  
[2026-10-25 16:34:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-25 16:34:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:55] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:34:55] testing.INFO: Old stock: 10  
[2026-10-25 16:34:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:55] testing.INFO: New stock: 9  
[2026-10-25 16:34:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-25 16:34:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade138f6765e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:55] testing.INFO: Old stock: 100  
[2026-10-25 16:34:55] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:55] testing.INFO: New stock: 99  
[2026-10-25 16:34:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138f6765e"} 
[2026-10-25 16:34:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade138f6fee4","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-25 16:34:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:34:55] testing.INFO: Old stock: 99  
[2026-10-25 16:34:55] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:55] testing.INFO: New stock: 97  
[2026-10-25 16:34:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade138f6fee4"} 
[2026-10-25 16:34:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade138f758f6","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-25 16:34:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade1390a6ee8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:56] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:56] testing.INFO: Old stock: 50  
[2026-10-25 16:34:56] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:56] testing.INFO: New stock: 48  
[2026-10-25 16:34:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1390a6ee8"} 
[2026-10-25 16:34:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6ade1390c1d5c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:56] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:34:56] testing.INFO: Old stock: 48  
[2026-10-25 16:34:56] testing.INFO: Quantity deducted: 3  
[2026-10-25 16:34:56] testing.INFO: New stock: 45  
[2026-10-25 16:34:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1390c1d5c"} 
[2026-10-25 16:34:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13919a7ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:57] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:34:57] testing.INFO: Old stock: 20  
[2026-10-25 16:34:57] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:34:57] testing.INFO: New stock: 18  
[2026-10-25 16:34:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13919a7ff"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13925b5af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13925b5af"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade139264f18","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139264f18"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6ade13926cbe2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13926cbe2"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6ade13927ec98","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13927ec98"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6ade1392858ad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 16:34:58] testing.INFO: Old stock: 1  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 0  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392858ad"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6ade13928bcec","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13928bcec"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6ade139293837","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139293837"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6ade139299eba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139299eba"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6ade1392a0d11","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392a0d11"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6ade1392a795c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 16:34:58] testing.INFO: Old stock: 1  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 0  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392a795c"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6ade1392aef4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392aef4a"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6ade1392b5ae4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392b5ae4"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6ade1392bc41e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392bc41e"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6ade1392c31ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392c31ff"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6ade1392c9979","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 16:34:58] testing.INFO: Old stock: 1  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 0  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392c9979"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6ade1392d0715","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392d0715"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6ade1392d75a1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392d75a1"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6ade1392de8b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392de8b2"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6ade1392e51a2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 16:34:58] testing.INFO: Old stock: 50  
[2026-10-25 16:34:58] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:58] testing.INFO: New stock: 49  
[2026-10-25 16:34:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392e51a2"} 
[2026-10-25 16:34:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6ade1392ec2a3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:58] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 16:34:59] testing.INFO: Old stock: 1  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 0  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1392ec2a3"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6ade13930a239","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13930a239"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6ade139310d38","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139310d38"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6ade13931733b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13931733b"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6ade13931e6b1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13931e6b1"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6ade139324c97","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 16:34:59] testing.INFO: Old stock: 1  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 0  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139324c97"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6ade13932b943","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13932b943"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6ade1393332d2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade1393332d2"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6ade139339d71","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139339d71"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6ade139340224","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 16:34:59] testing.INFO: Old stock: 50  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 49  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139340224"} 
[2026-10-25 16:34:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6ade139346a08","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:34:59] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 16:34:59] testing.INFO: Old stock: 1  
[2026-10-25 16:34:59] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:34:59] testing.INFO: New stock: 0  
[2026-10-25 16:34:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139346a08"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade139c609fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c609fd"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade139c6a093","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c6a093"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6ade139c709de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c709de"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6ade139c770e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c770e0"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6ade139c7e7cf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-25 16:35:08] testing.INFO: Old stock: 1  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 0  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c7e7cf"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6ade139c853e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c853e4"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6ade139c8c775","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c8c775"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6ade139c9319e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c9319e"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6ade139c9a91a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139c9a91a"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6ade139ca1414","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-25 16:35:08] testing.INFO: Old stock: 1  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 0  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139ca1414"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6ade139ca84dc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139ca84dc"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6ade139cae884","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cae884"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6ade139cb4fa7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cb4fa7"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6ade139cbb39d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cbb39d"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6ade139cc273d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-25 16:35:08] testing.INFO: Old stock: 1  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 0  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cc273d"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6ade139cc96c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cc96c6"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6ade139ccfe65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139ccfe65"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6ade139cd6b5f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cd6b5f"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6ade139cdd1fd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cdd1fd"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6ade139ce435c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-25 16:35:08] testing.INFO: Old stock: 1  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 0  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139ce435c"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6ade139ceabf9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:08] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-25 16:35:08] testing.INFO: Old stock: 50  
[2026-10-25 16:35:08] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:08] testing.INFO: New stock: 49  
[2026-10-25 16:35:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139ceabf9"} 
[2026-10-25 16:35:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6ade139cf1f0c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139cf1f0c"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6ade139d04b65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d04b65"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6ade139d0ceb2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d0ceb2"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6ade139d13818","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-25 16:35:09] testing.INFO: Old stock: 1  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 0  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d13818"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6ade139d19a71","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d19a71"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6ade139d2007d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d2007d"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6ade139d2696b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d2696b"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6ade139d2cf65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-25 16:35:09] testing.INFO: Old stock: 50  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 49  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d2cf65"} 
[2026-10-25 16:35:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6ade139d33383","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:09] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-25 16:35:09] testing.INFO: Old stock: 1  
[2026-10-25 16:35:09] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:09] testing.INFO: New stock: 0  
[2026-10-25 16:35:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139d33383"} 
[2026-10-25 16:35:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade139f2505c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:11] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:35:11] testing.INFO: Old stock: 50  
[2026-10-25 16:35:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:11] testing.INFO: New stock: 49  
[2026-10-25 16:35:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139f2505c"} 
[2026-10-25 16:35:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade139f312a7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:11] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:35:11] testing.INFO: Old stock: 50  
[2026-10-25 16:35:11] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:11] testing.INFO: New stock: 49  
[2026-10-25 16:35:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139f312a7"} 
[2026-10-25 16:35:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade139ff3399","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:12] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-25 16:35:12] testing.INFO: Old stock: 50  
[2026-10-25 16:35:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:12] testing.INFO: New stock: 49  
[2026-10-25 16:35:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade139ff3399"} 
[2026-10-25 16:35:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6ade13a0093c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:12] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-25 16:35:12] testing.INFO: Old stock: 50  
[2026-10-25 16:35:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:12] testing.INFO: New stock: 49  
[2026-10-25 16:35:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a0093c4"} 
[2026-10-25 16:35:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6ade13a00ffa7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:12] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-25 16:35:12] testing.INFO: Old stock: 50  
[2026-10-25 16:35:12] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:12] testing.INFO: New stock: 49  
[2026-10-25 16:35:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a00ffa7"} 
[2026-10-25 16:35:13] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-25 16:35:13"}  
[2026-10-25 16:35:13] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-25 16:35:13] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-25 16:35:13] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-25 16:35:13] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-25 16:35:13] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-25 16:35:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6ade13a1c06ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:13] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:35:13] testing.INFO: Old stock: 10  
[2026-10-25 16:35:13] testing.INFO: Quantity deducted: 1  
[2026-10-25 16:35:13] testing.INFO: New stock: 9  
[2026-10-25 16:35:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a1c06ae"} 
[2026-10-25 16:35:14] testing.ERROR: Error 119156BB: SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}

[previous exception] [object] (Exception(code: 0): SQLSTATE[42S22] at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}
"} 
[2026-10-25 16:35:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade13a316a90","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:15] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 16:35:15] testing.INFO: Old stock: 70  
[2026-10-25 16:35:15] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:35:15] testing.INFO: New stock: 65  
[2026-10-25 16:35:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a316a90"} 
[2026-10-25 16:35:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-25 16:35:15] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 16:35:15] testing.INFO: Old stock: 62  
[2026-10-25 16:35:15] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:35:15] testing.INFO: New stock: 60  
[2026-10-25 16:35:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-25 16:35:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade13a37386e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:15] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-25 16:35:15] testing.INFO: Old stock: 59  
[2026-10-25 16:35:15] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:35:15] testing.INFO: New stock: 55  
[2026-10-25 16:35:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a37386e"} 
[2026-10-25 16:35:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade13a439150","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:16] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:35:16] testing.INFO: Old stock: 10  
[2026-10-25 16:35:16] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:35:16] testing.INFO: New stock: 6  
[2026-10-25 16:35:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a439150"} 
[2026-10-25 16:35:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade13a459517","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:16] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:35:16] testing.INFO: Old stock: 10  
[2026-10-25 16:35:16] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:35:16] testing.INFO: New stock: 5  
[2026-10-25 16:35:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a459517"} 
[2026-10-25 16:35:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade13a479777","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:16] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-25 16:35:16] testing.INFO: Old stock: 10  
[2026-10-25 16:35:16] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:35:16] testing.INFO: New stock: 6  
[2026-10-25 16:35:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a479777"} 
[2026-10-25 16:35:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6ade13a4a8144","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:16] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-25 16:35:16] testing.INFO: Old stock: 5  
[2026-10-25 16:35:16] testing.INFO: Quantity deducted: 4  
[2026-10-25 16:35:16] testing.INFO: New stock: 1  
[2026-10-25 16:35:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a4a8144"} 
[2026-10-25 16:35:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade13a4cb07b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:16] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-25 16:35:16] testing.INFO: Old stock: 10  
[2026-10-25 16:35:16] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:35:16] testing.INFO: New stock: 5  
[2026-10-25 16:35:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a4cb07b"} 
[2026-10-25 16:35:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade13a506bbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:17] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-25 16:35:17] testing.INFO: Old stock: 12  
[2026-10-25 16:35:17] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:35:17] testing.INFO: New stock: 7  
[2026-10-25 16:35:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a506bbe"} 
[2026-10-25 16:35:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6ade13a5215e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:17] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-25 16:35:17] testing.INFO: Old stock: 12  
[2026-10-25 16:35:17] testing.INFO: Quantity deducted: 5  
[2026-10-25 16:35:17] testing.INFO: New stock: 7  
[2026-10-25 16:35:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a5215e4"} 
[2026-10-25 16:35:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13a71e9c4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-25 16:35:19] testing.INFO: Old stock: 10  
[2026-10-25 16:35:19] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:35:19] testing.INFO: New stock: 8  
[2026-10-25 16:35:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a71e9c4"} 
[2026-10-25 16:35:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13a831598","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-25 16:35:20] testing.INFO: Old stock: 10  
[2026-10-25 16:35:20] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:35:20] testing.INFO: New stock: 8  
[2026-10-25 16:35:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a831598"} 
[2026-10-25 16:35:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13a914872","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:21] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-25 16:35:21] testing.INFO: Old stock: 10  
[2026-10-25 16:35:21] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:35:21] testing.INFO: New stock: 8  
[2026-10-25 16:35:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a914872"} 
[2026-10-25 16:35:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6ade13a9b8b72","payment_method":"cash","payment_status":"paid"}} 
[2026-10-25 16:35:21] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-25 16:35:21] testing.INFO: Old stock: 10  
[2026-10-25 16:35:21] testing.INFO: Quantity deducted: 2  
[2026-10-25 16:35:21] testing.INFO: New stock: 8  
[2026-10-25 16:35:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6ade13a9b8b72"} 
[2026-10-26 16:29:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf63ce0ba34","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:29:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:29:34] testing.INFO: Old stock: 10  
[2026-10-26 16:29:34] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:29:34] testing.INFO: New stock: 7  
[2026-10-26 16:29:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ce0ba34"} 
[2026-10-26 16:29:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63ce59ba5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:29:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:29:34] testing.INFO: Old stock: 10  
[2026-10-26 16:29:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:29:34] testing.INFO: New stock: 9  
[2026-10-26 16:29:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ce59ba5"} 
[2026-10-26 16:29:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63ce6489d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:29:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:29:34] testing.INFO: Old stock: 9  
[2026-10-26 16:29:34] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:29:34] testing.INFO: New stock: 7  
[2026-10-26 16:29:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ce6489d"} 
[2026-10-26 16:29:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63cf13ef0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:29:35] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:29:35] testing.INFO: Old stock: 10  
[2026-10-26 16:29:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:29:35] testing.INFO: New stock: 9  
[2026-10-26 16:29:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63cf13ef0"} 
[2026-10-26 16:29:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63d62d882","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:29:42] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:29:42] testing.INFO: Old stock: 10  
[2026-10-26 16:29:42] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:29:42] testing.INFO: New stock: 9  
[2026-10-26 16:29:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63d62d882"} 
[2026-10-26 16:29:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63db85880","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:29:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:29:47] testing.INFO: Old stock: 10  
[2026-10-26 16:29:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:29:47] testing.INFO: New stock: 9  
[2026-10-26 16:29:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63db85880"} 
[2026-10-26 16:30:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf63f2a67da","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:10] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:10] testing.INFO: Old stock: 10  
[2026-10-26 16:30:10] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:30:10] testing.INFO: New stock: 7  
[2026-10-26 16:30:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f2a67da"} 
[2026-10-26 16:30:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63f2d8ace","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:10] testing.INFO: Old stock: 10  
[2026-10-26 16:30:10] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:10] testing.INFO: New stock: 9  
[2026-10-26 16:30:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f2d8ace"} 
[2026-10-26 16:30:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63f2e1925","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:10] testing.INFO: Old stock: 9  
[2026-10-26 16:30:10] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:10] testing.INFO: New stock: 7  
[2026-10-26 16:30:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f2e1925"} 
[2026-10-26 16:30:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63f388f7d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:11] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:11] testing.INFO: Old stock: 10  
[2026-10-26 16:30:11] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:11] testing.INFO: New stock: 9  
[2026-10-26 16:30:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f388f7d"} 
[2026-10-26 16:30:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63f8ee806","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:17] testing.INFO: Old stock: 100  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:17] testing.INFO: New stock: 96  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f8ee806"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf63f90d22e","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:17] testing.INFO: Old stock: 96  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:30:17] testing.INFO: New stock: 65  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f90d22e"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63f930ff5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:17] testing.INFO: Old stock: 100  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:17] testing.INFO: New stock: 96  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f930ff5"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf63f9392c0","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:17] testing.INFO: Old stock: 96  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:30:17] testing.INFO: New stock: 65  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f9392c0"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63f952a96","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:17] testing.INFO: Old stock: 100  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:17] testing.INFO: New stock: 96  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f952a96"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf63f95afde","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:17] testing.INFO: Old stock: 96  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:30:17] testing.INFO: New stock: 65  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f95afde"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63f9adf69","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:17] testing.INFO: Old stock: 100  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:17] testing.INFO: New stock: 96  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f9adf69"} 
[2026-10-26 16:30:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf63f9b60b2","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:17] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:17] testing.INFO: Old stock: 96  
[2026-10-26 16:30:17] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:30:17] testing.INFO: New stock: 65  
[2026-10-26 16:30:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63f9b60b2"} 
[2026-10-26 16:30:18] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-26 16:30:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63fb881d5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:19] testing.INFO: Old stock: 200  
[2026-10-26 16:30:19] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:19] testing.INFO: New stock: 196  
[2026-10-26 16:30:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fb881d5"} 
[2026-10-26 16:30:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63fb9194b","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:19] testing.INFO: Old stock: 196  
[2026-10-26 16:30:19] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:19] testing.INFO: New stock: 194  
[2026-10-26 16:30:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fb9194b"} 
[2026-10-26 16:30:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf63fb97bd3","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-26 16:30:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63fb9f2e8","payment_method":"card","payment_status":"paid"}} 
[2026-10-26 16:30:19] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:19] testing.INFO: Old stock: 191  
[2026-10-26 16:30:19] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:19] testing.INFO: New stock: 190  
[2026-10-26 16:30:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fb9f2e8"} 
[2026-10-26 16:30:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63fc4c4e0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:20] testing.INFO: Old stock: 200  
[2026-10-26 16:30:20] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:20] testing.INFO: New stock: 196  
[2026-10-26 16:30:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fc4c4e0"} 
[2026-10-26 16:30:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63fc55125","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:20] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:20] testing.INFO: Old stock: 196  
[2026-10-26 16:30:20] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:20] testing.INFO: New stock: 194  
[2026-10-26 16:30:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fc55125"} 
[2026-10-26 16:30:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63fc86dea","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:20] testing.INFO: Old stock: 200  
[2026-10-26 16:30:20] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:20] testing.INFO: New stock: 196  
[2026-10-26 16:30:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fc86dea"} 
[2026-10-26 16:30:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf63fcc4763","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:20] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:20] testing.INFO: Old stock: 196  
[2026-10-26 16:30:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:20] testing.INFO: New stock: 195  
[2026-10-26 16:30:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fcc4763"} 
[2026-10-26 16:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf63fd6c898","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:21] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:21] testing.INFO: Old stock: 200  
[2026-10-26 16:30:21] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:21] testing.INFO: New stock: 196  
[2026-10-26 16:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fd6c898"} 
[2026-10-26 16:30:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:00:21+02:00"}} 
[2026-10-26 16:30:21] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:21] testing.INFO: Old stock: 196  
[2026-10-26 16:30:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:21] testing.INFO: New stock: 195  
[2026-10-26 16:30:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf63fe62a38","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:22] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:22] testing.INFO: Old stock: 10  
[2026-10-26 16:30:22] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:30:22] testing.INFO: New stock: 7  
[2026-10-26 16:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fe62a38"} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adf63fe7a1c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:22] testing.INFO: Old stock: 10  
[2026-10-26 16:30:22] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:22] testing.INFO: New stock: 8  
[2026-10-26 16:30:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63fe7a1c8"} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf63fe8ffb1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf63feac193","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adf63febddd3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63fed2f32","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-26 16:30:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63fee52b2","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-26 16:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63ff291fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:23] testing.INFO: Old stock: 10  
[2026-10-26 16:30:23] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:23] testing.INFO: New stock: 8  
[2026-10-26 16:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ff291fa"} 
[2026-10-26 16:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63ff4faf7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:23] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:23] testing.INFO: Old stock: 10  
[2026-10-26 16:30:23] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:23] testing.INFO: New stock: 8  
[2026-10-26 16:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ff4faf7"} 
[2026-10-26 16:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63ff743b6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:23] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:23] testing.INFO: Old stock: 10  
[2026-10-26 16:30:23] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:23] testing.INFO: New stock: 8  
[2026-10-26 16:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ff743b6"} 
[2026-10-26 16:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63ff958af","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:23] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:23] testing.INFO: Old stock: 3  
[2026-10-26 16:30:23] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:23] testing.INFO: New stock: 1  
[2026-10-26 16:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ff958af"} 
[2026-10-26 16:30:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf63ffd096e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:23] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-26 16:30:23] testing.INFO: Old stock: 10  
[2026-10-26 16:30:23] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:23] testing.INFO: New stock: 8  
[2026-10-26 16:30:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf63ffd096e"} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:24] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:24] testing.INFO: Old stock: 10  
[2026-10-26 16:30:24] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:24] testing.INFO: New stock: 8  
[2026-10-26 16:30:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:24] testing.INFO: Old stock: 10  
[2026-10-26 16:30:24] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:24] testing.INFO: New stock: 9  
[2026-10-26 16:30:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T14:30:00+02:00"}} 
[2026-10-26 16:30:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:24] testing.INFO: Old stock: 10  
[2026-10-26 16:30:24] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:24] testing.INFO: New stock: 9  
[2026-10-26 16:30:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-29T16:30:24+02:00"}} 
[2026-10-26 16:30:24] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:24] testing.INFO: Old stock: 10  
[2026-10-26 16:30:24] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:24] testing.INFO: New stock: 9  
[2026-10-26 16:30:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:30:24+02:00"}} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:30:24+02:00"}} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:30:24+02:00"}} 
[2026-10-26 16:30:24] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:30:24] testing.INFO: Old stock: 5  
[2026-10-26 16:30:24] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:30:24] testing.INFO: New stock: 2  
[2026-10-26 16:30:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:30:24+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-26 16:30:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T13:30:24+02:00"}} 
[2026-10-26 16:30:24] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-26 16:30:24] testing.INFO: Old stock: 10  
[2026-10-26 16:30:24] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:24] testing.INFO: New stock: 9  
[2026-10-26 16:30:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:30:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6402e5e5f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:26] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-26 16:30:26] testing.INFO: Old stock: 50  
[2026-10-26 16:30:26] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:26] testing.INFO: New stock: 49  
[2026-10-26 16:30:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6402e5e5f"} 
[2026-10-26 16:30:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6adf6402eee02","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:26] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-26 16:30:26] testing.INFO: Old stock: 50  
[2026-10-26 16:30:26] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:26] testing.INFO: New stock: 48  
[2026-10-26 16:30:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6402eee02"} 
[2026-10-26 16:30:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6adf640302583","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:27] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-26 16:30:27] testing.INFO: Old stock: 50  
[2026-10-26 16:30:27] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:30:27] testing.INFO: New stock: 47  
[2026-10-26 16:30:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640302583"} 
[2026-10-26 16:30:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adf640404d2b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:28] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:30:28] testing.INFO: Old stock: 16  
[2026-10-26 16:30:28] testing.INFO: Quantity deducted: 6  
[2026-10-26 16:30:28] testing.INFO: New stock: 10  
[2026-10-26 16:30:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640404d2b"} 
[2026-10-26 16:30:28] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-26 16:30:28] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-26 16:30:28] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-26 16:30:28"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-26 16:30:28] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-26 16:30:29] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-25"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-26 16:30:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6405dfb5d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:29] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6405ea352","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:29] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-26 16:30:29] testing.INFO: Old stock: 2  
[2026-10-26 16:30:29] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:29] testing.INFO: New stock: 1  
[2026-10-26 16:30:29] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6405ea352"} 
[2026-10-26 16:30:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:30] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-26 16:30:30] testing.INFO: Old stock: 35  
[2026-10-26 16:30:30] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:30] testing.INFO: New stock: 33  
[2026-10-26 16:30:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-26 16:30:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf64069a567","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:30] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-26 16:30:30] testing.INFO: Old stock: 13  
[2026-10-26 16:30:30] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:30:30] testing.INFO: New stock: 8  
[2026-10-26 16:30:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64069a567"} 
[2026-10-26 16:30:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6406a3292","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:30] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-26 16:30:30] testing.INFO: Old stock: 8  
[2026-10-26 16:30:30] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:30] testing.INFO: New stock: 4  
[2026-10-26 16:30:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6406a3292"} 
[2026-10-26 16:30:30] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adf6406d376d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:30] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-26 16:30:30] testing.INFO: Old stock: 8  
[2026-10-26 16:30:30] testing.INFO: Quantity deducted: 6  
[2026-10-26 16:30:30] testing.INFO: New stock: 2  
[2026-10-26 16:30:30] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6406d376d"} 
[2026-10-26 16:30:31] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-26 16:30:31] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-26 16:30:31] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-26 16:30:31"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-26 16:30:31] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:34] testing.INFO: Old stock: 10  
[2026-10-26 16:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:34] testing.INFO: New stock: 9  
[2026-10-26 16:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:34] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:34] testing.INFO: Old stock: 10  
[2026-10-26 16:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:34] testing.INFO: New stock: 9  
[2026-10-26 16:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:34] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:34] testing.INFO: Old stock: 10  
[2026-10-26 16:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:34] testing.INFO: New stock: 9  
[2026-10-26 16:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:34] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:34] testing.INFO: Old stock: 10  
[2026-10-26 16:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:34] testing.INFO: New stock: 9  
[2026-10-26 16:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf640aa21d5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:34] testing.INFO: Old stock: 100  
[2026-10-26 16:30:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:34] testing.INFO: New stock: 99  
[2026-10-26 16:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640aa21d5"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf640aaef81","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:30:34] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:34] testing.INFO: Old stock: 99  
[2026-10-26 16:30:34] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:34] testing.INFO: New stock: 97  
[2026-10-26 16:30:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640aaef81"} 
[2026-10-26 16:30:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf640ab5026","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-26 16:30:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf640be4648","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:35] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:35] testing.INFO: Old stock: 50  
[2026-10-26 16:30:35] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:35] testing.INFO: New stock: 48  
[2026-10-26 16:30:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640be4648"} 
[2026-10-26 16:30:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf640c00cfc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:36] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:30:36] testing.INFO: Old stock: 48  
[2026-10-26 16:30:36] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:30:36] testing.INFO: New stock: 45  
[2026-10-26 16:30:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640c00cfc"} 
[2026-10-26 16:30:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf640c9493b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:36] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:36] testing.INFO: Old stock: 20  
[2026-10-26 16:30:36] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:36] testing.INFO: New stock: 18  
[2026-10-26 16:30:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640c9493b"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf640d77ef9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640d77ef9"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf640d8158a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640d8158a"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf640d8ae17","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640d8ae17"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6adf640d9549a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640d9549a"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6adf640d9c5e7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-26 16:30:37] testing.INFO: Old stock: 1  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 0  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640d9c5e7"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6adf640da5e23","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640da5e23"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6adf640db02a2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640db02a2"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6adf640db7474","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640db7474"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6adf640dbf33b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640dbf33b"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6adf640dc75c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-26 16:30:37] testing.INFO: Old stock: 1  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 0  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640dc75c5"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6adf640dcfccc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640dcfccc"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6adf640dd65ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640dd65ff"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6adf640dddbdf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640dddbdf"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6adf640de4eaa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-26 16:30:37] testing.INFO: Old stock: 50  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 49  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640de4eaa"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6adf640dec359","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:37] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-26 16:30:37] testing.INFO: Old stock: 1  
[2026-10-26 16:30:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:37] testing.INFO: New stock: 0  
[2026-10-26 16:30:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640dec359"} 
[2026-10-26 16:30:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6adf640df2cc1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640df2cc1"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6adf640e05502","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e05502"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6adf640e0bbf9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e0bbf9"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6adf640e13e6d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e13e6d"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6adf640e1b810","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-26 16:30:38] testing.INFO: Old stock: 1  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 0  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e1b810"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6adf640e22a70","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e22a70"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6adf640e2926c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e2926c"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6adf640e3053b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e3053b"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6adf640e36b80","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e36b80"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6adf640e45281","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-26 16:30:38] testing.INFO: Old stock: 1  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 0  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e45281"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6adf640e4e0ff","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e4e0ff"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6adf640e58f34","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e58f34"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6adf640e608e4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e608e4"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6adf640e67a54","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-26 16:30:38] testing.INFO: Old stock: 50  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 49  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e67a54"} 
[2026-10-26 16:30:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6adf640e6f834","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:38] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-26 16:30:38] testing.INFO: Old stock: 1  
[2026-10-26 16:30:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:38] testing.INFO: New stock: 0  
[2026-10-26 16:30:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf640e6f834"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf641744ea5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641744ea5"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf64174e857","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64174e857"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf641755112","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641755112"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6adf64175bc92","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64175bc92"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6adf641762628","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-26 16:30:47] testing.INFO: Old stock: 1  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 0  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641762628"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6adf6417688ed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417688ed"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6adf64176ff11","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64176ff11"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6adf6417769de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417769de"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6adf64177cf63","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64177cf63"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6adf64178375a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-26 16:30:47] testing.INFO: Old stock: 1  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 0  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64178375a"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6adf64178ad01","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64178ad01"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6adf641791d86","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641791d86"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6adf641798361","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641798361"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6adf64179e86f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64179e86f"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6adf6417a5799","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-26 16:30:47] testing.INFO: Old stock: 1  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 0  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417a5799"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6adf6417abf6b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417abf6b"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6adf6417b2bce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417b2bce"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6adf6417b902e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417b902e"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6adf6417bffe6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417bffe6"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6adf6417c894f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-26 16:30:47] testing.INFO: Old stock: 1  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 0  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417c894f"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6adf6417cf5d4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417cf5d4"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6adf6417d7246","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417d7246"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6adf6417ddb5e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417ddb5e"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6adf6417e482a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-26 16:30:47] testing.INFO: Old stock: 50  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 49  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417e482a"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6adf6417eb478","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:47] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-26 16:30:47] testing.INFO: Old stock: 1  
[2026-10-26 16:30:47] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:47] testing.INFO: New stock: 0  
[2026-10-26 16:30:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417eb478"} 
[2026-10-26 16:30:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6adf6417f18d2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:48] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-26 16:30:48] testing.INFO: Old stock: 50  
[2026-10-26 16:30:48] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:48] testing.INFO: New stock: 49  
[2026-10-26 16:30:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6417f18d2"} 
[2026-10-26 16:30:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6adf641803f2e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:48] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-26 16:30:48] testing.INFO: Old stock: 50  
[2026-10-26 16:30:48] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:48] testing.INFO: New stock: 49  
[2026-10-26 16:30:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641803f2e"} 
[2026-10-26 16:30:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6adf64180b55c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:48] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-26 16:30:48] testing.INFO: Old stock: 50  
[2026-10-26 16:30:48] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:48] testing.INFO: New stock: 49  
[2026-10-26 16:30:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64180b55c"} 
[2026-10-26 16:30:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6adf641812bab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:48] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-26 16:30:48] testing.INFO: Old stock: 50  
[2026-10-26 16:30:48] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:48] testing.INFO: New stock: 49  
[2026-10-26 16:30:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641812bab"} 
[2026-10-26 16:30:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6adf64181a2df","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:48] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-26 16:30:48] testing.INFO: Old stock: 1  
[2026-10-26 16:30:48] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:48] testing.INFO: New stock: 0  
[2026-10-26 16:30:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64181a2df"} 
[2026-10-26 16:30:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf641a1e0cf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:50] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:30:50] testing.INFO: Old stock: 50  
[2026-10-26 16:30:50] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:50] testing.INFO: New stock: 49  
[2026-10-26 16:30:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641a1e0cf"} 
[2026-10-26 16:30:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf641a2a483","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:50] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:30:50] testing.INFO: Old stock: 50  
[2026-10-26 16:30:50] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:50] testing.INFO: New stock: 49  
[2026-10-26 16:30:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641a2a483"} 
[2026-10-26 16:30:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf641ae94e3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:50] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:30:50] testing.INFO: Old stock: 50  
[2026-10-26 16:30:50] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:50] testing.INFO: New stock: 49  
[2026-10-26 16:30:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641ae94e3"} 
[2026-10-26 16:30:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf641af2771","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:51] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:30:51] testing.INFO: Old stock: 50  
[2026-10-26 16:30:51] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:51] testing.INFO: New stock: 49  
[2026-10-26 16:30:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641af2771"} 
[2026-10-26 16:30:51] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf641b04dbf","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:51] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:30:51] testing.INFO: Old stock: 50  
[2026-10-26 16:30:51] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:51] testing.INFO: New stock: 49  
[2026-10-26 16:30:51] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641b04dbf"} 
[2026-10-26 16:30:52] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-26 16:30:52"}  
[2026-10-26 16:30:52] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-26 16:30:52] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-26 16:30:52] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-26 16:30:52] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-26 16:30:52] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-26 16:30:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf641cc60a4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:52] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:30:52] testing.INFO: Old stock: 10  
[2026-10-26 16:30:52] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:30:52] testing.INFO: New stock: 9  
[2026-10-26 16:30:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641cc60a4"} 
[2026-10-26 16:30:54] testing.ERROR: Error 18D333B9: SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}

[previous exception] [object] (Exception(code: 0): SQLSTATE[42S22] at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}
"} 
[2026-10-26 16:30:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf641e73451","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:54] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:30:54] testing.INFO: Old stock: 70  
[2026-10-26 16:30:54] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:30:54] testing.INFO: New stock: 65  
[2026-10-26 16:30:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641e73451"} 
[2026-10-26 16:30:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-26 16:30:54] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:30:54] testing.INFO: Old stock: 62  
[2026-10-26 16:30:54] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:30:54] testing.INFO: New stock: 60  
[2026-10-26 16:30:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-26 16:30:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf641f1ada1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:55] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:30:55] testing.INFO: Old stock: 59  
[2026-10-26 16:30:55] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:55] testing.INFO: New stock: 55  
[2026-10-26 16:30:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf641f1ada1"} 
[2026-10-26 16:30:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf64208bd0a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:56] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:30:56] testing.INFO: Old stock: 10  
[2026-10-26 16:30:56] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:56] testing.INFO: New stock: 6  
[2026-10-26 16:30:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64208bd0a"} 
[2026-10-26 16:30:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf6420ca19a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:56] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:30:56] testing.INFO: Old stock: 10  
[2026-10-26 16:30:56] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:30:56] testing.INFO: New stock: 5  
[2026-10-26 16:30:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6420ca19a"} 
[2026-10-26 16:30:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf642126935","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:57] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:30:57] testing.INFO: Old stock: 10  
[2026-10-26 16:30:57] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:57] testing.INFO: New stock: 6  
[2026-10-26 16:30:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf642126935"} 
[2026-10-26 16:30:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf642185454","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:57] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:30:57] testing.INFO: Old stock: 5  
[2026-10-26 16:30:57] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:30:57] testing.INFO: New stock: 1  
[2026-10-26 16:30:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf642185454"} 
[2026-10-26 16:30:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf6421c450c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:57] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-26 16:30:57] testing.INFO: Old stock: 10  
[2026-10-26 16:30:57] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:30:57] testing.INFO: New stock: 5  
[2026-10-26 16:30:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6421c450c"} 
[2026-10-26 16:30:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf64222c704","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:58] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-26 16:30:58] testing.INFO: Old stock: 12  
[2026-10-26 16:30:58] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:30:58] testing.INFO: New stock: 7  
[2026-10-26 16:30:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64222c704"} 
[2026-10-26 16:30:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf64225e018","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:30:58] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-26 16:30:58] testing.INFO: Old stock: 12  
[2026-10-26 16:30:58] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:30:58] testing.INFO: New stock: 7  
[2026-10-26 16:30:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64225e018"} 
[2026-10-26 16:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf64250f70d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:01] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:31:01] testing.INFO: Old stock: 10  
[2026-10-26 16:31:01] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:31:01] testing.INFO: New stock: 7  
[2026-10-26 16:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf64250f70d"} 
[2026-10-26 16:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf642549743","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:01] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:31:01] testing.INFO: Old stock: 10  
[2026-10-26 16:31:01] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:31:01] testing.INFO: New stock: 9  
[2026-10-26 16:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf642549743"} 
[2026-10-26 16:31:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf642557a8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:01] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:31:01] testing.INFO: Old stock: 9  
[2026-10-26 16:31:01] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:31:01] testing.INFO: New stock: 7  
[2026-10-26 16:31:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf642557a8f"} 
[2026-10-26 16:31:02] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6426231db","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:02] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:31:02] testing.INFO: Old stock: 10  
[2026-10-26 16:31:02] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:31:02] testing.INFO: New stock: 9  
[2026-10-26 16:31:02] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6426231db"} 
[2026-10-26 16:31:03] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf642755cc7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:03] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:31:03] testing.INFO: Old stock: 10  
[2026-10-26 16:31:03] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:31:03] testing.INFO: New stock: 8  
[2026-10-26 16:31:03] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf642755cc7"} 
[2026-10-26 16:31:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6428c2e95","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:04] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:31:04] testing.INFO: Old stock: 10  
[2026-10-26 16:31:04] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:31:04] testing.INFO: New stock: 8  
[2026-10-26 16:31:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6428c2e95"} 
[2026-10-26 16:31:05] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6429da394","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:05] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:31:05] testing.INFO: Old stock: 10  
[2026-10-26 16:31:05] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:31:05] testing.INFO: New stock: 8  
[2026-10-26 16:31:05] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6429da394"} 
[2026-10-26 16:31:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf642ad6c35","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:31:06] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:31:06] testing.INFO: Old stock: 10  
[2026-10-26 16:31:06] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:31:06] testing.INFO: New stock: 8  
[2026-10-26 16:31:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf642ad6c35"} 
[2026-10-26 16:37:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf65a681a5d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:26] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:37:26] testing.INFO: Old stock: 10  
[2026-10-26 16:37:26] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:37:26] testing.INFO: New stock: 7  
[2026-10-26 16:37:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a681a5d"} 
[2026-10-26 16:37:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf65a6c8a88","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:26] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:37:26] testing.INFO: Old stock: 10  
[2026-10-26 16:37:26] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:37:26] testing.INFO: New stock: 9  
[2026-10-26 16:37:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a6c8a88"} 
[2026-10-26 16:37:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf65a6d183e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:26] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:37:26] testing.INFO: Old stock: 9  
[2026-10-26 16:37:26] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:37:26] testing.INFO: New stock: 7  
[2026-10-26 16:37:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a6d183e"} 
[2026-10-26 16:37:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf65a78901b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:27] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:37:27] testing.INFO: Old stock: 10  
[2026-10-26 16:37:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:37:27] testing.INFO: New stock: 9  
[2026-10-26 16:37:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a78901b"} 
[2026-10-26 16:37:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf65a7abf76","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 1  
[2026-10-26 16:37:27] testing.INFO: Old stock: 10  
[2026-10-26 16:37:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:37:27] testing.INFO: New stock: 9  
[2026-10-26 16:37:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a7abf76"} 
[2026-10-26 16:37:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":2}],"invoice_no":"INV-6adf65a7b2ba3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 2  
[2026-10-26 16:37:27] testing.INFO: Old stock: 10  
[2026-10-26 16:37:27] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:37:27] testing.INFO: New stock: 8  
[2026-10-26 16:37:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a7b2ba3"} 
[2026-10-26 16:37:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":3}],"invoice_no":"INV-6adf65a7bb76d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 3  
[2026-10-26 16:37:27] testing.INFO: Old stock: 10  
[2026-10-26 16:37:27] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:37:27] testing.INFO: New stock: 7  
[2026-10-26 16:37:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a7bb76d"} 
[2026-10-26 16:37:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":4}],"invoice_no":"INV-6adf65a7c2ee6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:37:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 4  
[2026-10-26 16:37:27] testing.INFO: Old stock: 10  
[2026-10-26 16:37:27] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:37:27] testing.INFO: New stock: 6  
[2026-10-26 16:37:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65a7c2ee6"} 
[2026-10-26 16:38:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf65d8646be","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:38:16] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:38:16] testing.INFO: Old stock: 10  
[2026-10-26 16:38:16] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:38:16] testing.INFO: New stock: 9  
[2026-10-26 16:38:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65d8646be"} 
[2026-10-26 16:38:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf65d8ad82a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:38:16] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 1  
[2026-10-26 16:38:16] testing.INFO: Old stock: 10  
[2026-10-26 16:38:16] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:38:16] testing.INFO: New stock: 9  
[2026-10-26 16:38:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65d8ad82a"} 
[2026-10-26 16:38:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":2}],"invoice_no":"INV-6adf65d8b6984","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:38:16] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 2  
[2026-10-26 16:38:16] testing.INFO: Old stock: 10  
[2026-10-26 16:38:16] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:38:16] testing.INFO: New stock: 8  
[2026-10-26 16:38:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65d8b6984"} 
[2026-10-26 16:38:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":3}],"invoice_no":"INV-6adf65d8bdc28","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:38:16] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 3  
[2026-10-26 16:38:16] testing.INFO: Old stock: 10  
[2026-10-26 16:38:16] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:38:16] testing.INFO: New stock: 7  
[2026-10-26 16:38:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65d8bdc28"} 
[2026-10-26 16:38:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":4}],"invoice_no":"INV-6adf65d8c464a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:38:16] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 4  
[2026-10-26 16:38:16] testing.INFO: Old stock: 10  
[2026-10-26 16:38:16] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:38:16] testing.INFO: New stock: 6  
[2026-10-26 16:38:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf65d8c464a"} 
[2026-10-26 16:39:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf661fa4c4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:27] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:27] testing.INFO: Old stock: 10  
[2026-10-26 16:39:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:39:27] testing.INFO: New stock: 9  
[2026-10-26 16:39:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf661fa4c4c"} 
[2026-10-26 16:39:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf661fd59d8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 1  
[2026-10-26 16:39:27] testing.INFO: Old stock: 10  
[2026-10-26 16:39:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:39:27] testing.INFO: New stock: 9  
[2026-10-26 16:39:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf661fd59d8"} 
[2026-10-26 16:39:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":2}],"invoice_no":"INV-6adf661fddb75","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 2  
[2026-10-26 16:39:27] testing.INFO: Old stock: 10  
[2026-10-26 16:39:27] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:27] testing.INFO: New stock: 8  
[2026-10-26 16:39:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf661fddb75"} 
[2026-10-26 16:39:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":3}],"invoice_no":"INV-6adf661fe538d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 3  
[2026-10-26 16:39:27] testing.INFO: Old stock: 10  
[2026-10-26 16:39:27] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:39:27] testing.INFO: New stock: 7  
[2026-10-26 16:39:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf661fe538d"} 
[2026-10-26 16:39:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":4}],"invoice_no":"INV-6adf661fec0fb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:27] testing.INFO: Stock deduction for product: Amoxicillin 250mg Capsules 4  
[2026-10-26 16:39:27] testing.INFO: Old stock: 10  
[2026-10-26 16:39:27] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:27] testing.INFO: New stock: 6  
[2026-10-26 16:39:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf661fec0fb"} 
[2026-10-26 16:39:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf66353c266","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:49] testing.INFO: Old stock: 100  
[2026-10-26 16:39:49] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:49] testing.INFO: New stock: 96  
[2026-10-26 16:39:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66353c266"} 
[2026-10-26 16:39:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf663551cae","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:39:49] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:49] testing.INFO: Old stock: 96  
[2026-10-26 16:39:49] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:39:49] testing.INFO: New stock: 65  
[2026-10-26 16:39:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663551cae"} 
[2026-10-26 16:39:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf663591c4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:39:49] testing.INFO: Old stock: 100  
[2026-10-26 16:39:49] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:49] testing.INFO: New stock: 96  
[2026-10-26 16:39:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663591c4a"} 
[2026-10-26 16:39:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf6635a044a","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:39:49] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:39:49] testing.INFO: Old stock: 96  
[2026-10-26 16:39:49] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:39:49] testing.INFO: New stock: 65  
[2026-10-26 16:39:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6635a044a"} 
[2026-10-26 16:39:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6635d3e2e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:49] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:39:49] testing.INFO: Old stock: 100  
[2026-10-26 16:39:49] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:49] testing.INFO: New stock: 96  
[2026-10-26 16:39:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6635d3e2e"} 
[2026-10-26 16:39:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf6635e1774","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:39:49] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:39:49] testing.INFO: Old stock: 96  
[2026-10-26 16:39:49] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:39:49] testing.INFO: New stock: 65  
[2026-10-26 16:39:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6635e1774"} 
[2026-10-26 16:39:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6636a15c0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:50] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:39:50] testing.INFO: Old stock: 100  
[2026-10-26 16:39:50] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:50] testing.INFO: New stock: 96  
[2026-10-26 16:39:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6636a15c0"} 
[2026-10-26 16:39:50] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf6636af49c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:39:50] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:39:50] testing.INFO: Old stock: 96  
[2026-10-26 16:39:50] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:39:50] testing.INFO: New stock: 65  
[2026-10-26 16:39:50] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6636af49c"} 
[2026-10-26 16:39:51] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-26 16:39:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf663935fad","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:53] testing.INFO: Old stock: 200  
[2026-10-26 16:39:53] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:53] testing.INFO: New stock: 196  
[2026-10-26 16:39:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663935fad"} 
[2026-10-26 16:39:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663944849","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:39:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:53] testing.INFO: Old stock: 196  
[2026-10-26 16:39:53] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:53] testing.INFO: New stock: 194  
[2026-10-26 16:39:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663944849"} 
[2026-10-26 16:39:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf66394e4a9","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-26 16:39:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf66395cb9b","payment_method":"card","payment_status":"paid"}} 
[2026-10-26 16:39:53] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:53] testing.INFO: Old stock: 191  
[2026-10-26 16:39:53] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:39:53] testing.INFO: New stock: 190  
[2026-10-26 16:39:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66395cb9b"} 
[2026-10-26 16:39:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf663a5d941","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:54] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:39:54] testing.INFO: Old stock: 200  
[2026-10-26 16:39:54] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:54] testing.INFO: New stock: 196  
[2026-10-26 16:39:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663a5d941"} 
[2026-10-26 16:39:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663a71f9c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:54] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:39:54] testing.INFO: Old stock: 196  
[2026-10-26 16:39:54] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:54] testing.INFO: New stock: 194  
[2026-10-26 16:39:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663a71f9c"} 
[2026-10-26 16:39:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf663ab166c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:54] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:39:54] testing.INFO: Old stock: 200  
[2026-10-26 16:39:54] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:54] testing.INFO: New stock: 196  
[2026-10-26 16:39:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663ab166c"} 
[2026-10-26 16:39:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf663b16e29","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:55] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:39:55] testing.INFO: Old stock: 196  
[2026-10-26 16:39:55] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:39:55] testing.INFO: New stock: 195  
[2026-10-26 16:39:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663b16e29"} 
[2026-10-26 16:39:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf663c128b8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:56] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:39:56] testing.INFO: Old stock: 200  
[2026-10-26 16:39:56] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:39:56] testing.INFO: New stock: 196  
[2026-10-26 16:39:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663c128b8"} 
[2026-10-26 16:39:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:09:56+02:00"}} 
[2026-10-26 16:39:56] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:39:56] testing.INFO: Old stock: 196  
[2026-10-26 16:39:56] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:39:56] testing.INFO: New stock: 195  
[2026-10-26 16:39:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-26 16:39:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf663d6a741","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:57] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:57] testing.INFO: Old stock: 10  
[2026-10-26 16:39:57] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:39:57] testing.INFO: New stock: 7  
[2026-10-26 16:39:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663d6a741"} 
[2026-10-26 16:39:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adf663d970fb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:57] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:39:57] testing.INFO: Old stock: 10  
[2026-10-26 16:39:57] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:57] testing.INFO: New stock: 8  
[2026-10-26 16:39:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663d970fb"} 
[2026-10-26 16:39:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf663dba564","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:57] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf663ddfb0b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adf663e0a49f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663e34b12","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-26 16:39:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663e53514","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-26 16:39:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663e9f9f8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:58] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:39:58] testing.INFO: Old stock: 10  
[2026-10-26 16:39:58] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:58] testing.INFO: New stock: 8  
[2026-10-26 16:39:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663e9f9f8"} 
[2026-10-26 16:39:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663ee566a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:58] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:39:58] testing.INFO: Old stock: 10  
[2026-10-26 16:39:58] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:58] testing.INFO: New stock: 8  
[2026-10-26 16:39:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663ee566a"} 
[2026-10-26 16:39:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663f2ab9e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:59] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:39:59] testing.INFO: Old stock: 10  
[2026-10-26 16:39:59] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:59] testing.INFO: New stock: 8  
[2026-10-26 16:39:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663f2ab9e"} 
[2026-10-26 16:39:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663f5c659","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:59] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:39:59] testing.INFO: Old stock: 3  
[2026-10-26 16:39:59] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:59] testing.INFO: New stock: 1  
[2026-10-26 16:39:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663f5c659"} 
[2026-10-26 16:39:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf663fb78c5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:39:59] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-26 16:39:59] testing.INFO: Old stock: 10  
[2026-10-26 16:39:59] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:39:59] testing.INFO: New stock: 8  
[2026-10-26 16:39:59] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf663fb78c5"} 
[2026-10-26 16:39:59] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:00] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:00] testing.INFO: Old stock: 10  
[2026-10-26 16:40:00] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:00] testing.INFO: New stock: 8  
[2026-10-26 16:40:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:40:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:00] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:00] testing.INFO: Old stock: 10  
[2026-10-26 16:40:00] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:00] testing.INFO: New stock: 9  
[2026-10-26 16:40:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:40:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T14:40:00+02:00"}} 
[2026-10-26 16:40:00] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:40:00] testing.INFO: Old stock: 10  
[2026-10-26 16:40:00] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:00] testing.INFO: New stock: 9  
[2026-10-26 16:40:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:40:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-29T16:40:00+02:00"}} 
[2026-10-26 16:40:00] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:40:00] testing.INFO: Old stock: 10  
[2026-10-26 16:40:00] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:00] testing.INFO: New stock: 9  
[2026-10-26 16:40:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:40:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:40:00+02:00"}} 
[2026-10-26 16:40:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:40:00+02:00"}} 
[2026-10-26 16:40:00] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:40:00+02:00"}} 
[2026-10-26 16:40:00] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:40:00] testing.INFO: Old stock: 5  
[2026-10-26 16:40:00] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:40:00] testing.INFO: New stock: 2  
[2026-10-26 16:40:00] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:40:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:40:01+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-26 16:40:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T13:40:01+02:00"}} 
[2026-10-26 16:40:01] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-26 16:40:01] testing.INFO: Old stock: 10  
[2026-10-26 16:40:01] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:01] testing.INFO: New stock: 9  
[2026-10-26 16:40:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:40:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf66445e798","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:04] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-26 16:40:04] testing.INFO: Old stock: 50  
[2026-10-26 16:40:04] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:04] testing.INFO: New stock: 49  
[2026-10-26 16:40:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66445e798"} 
[2026-10-26 16:40:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6adf66446de3a","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:40:04] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-26 16:40:04] testing.INFO: Old stock: 50  
[2026-10-26 16:40:04] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:04] testing.INFO: New stock: 48  
[2026-10-26 16:40:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66446de3a"} 
[2026-10-26 16:40:04] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6adf664477f52","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:04] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-26 16:40:04] testing.INFO: Old stock: 50  
[2026-10-26 16:40:04] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:40:04] testing.INFO: New stock: 47  
[2026-10-26 16:40:04] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664477f52"} 
[2026-10-26 16:40:06] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adf664600f3c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:06] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:40:06] testing.INFO: Old stock: 16  
[2026-10-26 16:40:06] testing.INFO: Quantity deducted: 6  
[2026-10-26 16:40:06] testing.INFO: New stock: 10  
[2026-10-26 16:40:06] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664600f3c"} 
[2026-10-26 16:40:07] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-26 16:40:07] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-26 16:40:07] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-26 16:40:07"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-26 16:40:07] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-26 16:40:08] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-25"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-26 16:40:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6648d2e0a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:08] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6648e9907","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:08] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-26 16:40:08] testing.INFO: Old stock: 2  
[2026-10-26 16:40:08] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:08] testing.INFO: New stock: 1  
[2026-10-26 16:40:08] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6648e9907"} 
[2026-10-26 16:40:09] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:09] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-26 16:40:09] testing.INFO: Old stock: 35  
[2026-10-26 16:40:09] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:09] testing.INFO: New stock: 33  
[2026-10-26 16:40:09] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-26 16:40:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf664a0ee12","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:10] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-26 16:40:10] testing.INFO: Old stock: 13  
[2026-10-26 16:40:10] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:40:10] testing.INFO: New stock: 8  
[2026-10-26 16:40:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664a0ee12"} 
[2026-10-26 16:40:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf664a1ccb2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:10] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-26 16:40:10] testing.INFO: Old stock: 8  
[2026-10-26 16:40:10] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:40:10] testing.INFO: New stock: 4  
[2026-10-26 16:40:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664a1ccb2"} 
[2026-10-26 16:40:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adf664a68377","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:10] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-26 16:40:10] testing.INFO: Old stock: 8  
[2026-10-26 16:40:10] testing.INFO: Quantity deducted: 6  
[2026-10-26 16:40:10] testing.INFO: New stock: 2  
[2026-10-26 16:40:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664a68377"} 
[2026-10-26 16:40:10] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-26 16:40:10] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-26 16:40:10] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-26 16:40:10"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-26 16:40:10] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:15] testing.INFO: Old stock: 10  
[2026-10-26 16:40:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:15] testing.INFO: New stock: 9  
[2026-10-26 16:40:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:40:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:15] testing.INFO: Old stock: 10  
[2026-10-26 16:40:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:15] testing.INFO: New stock: 9  
[2026-10-26 16:40:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:15] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:40:15] testing.INFO: Old stock: 10  
[2026-10-26 16:40:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:15] testing.INFO: New stock: 9  
[2026-10-26 16:40:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:15] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:40:15] testing.INFO: Old stock: 10  
[2026-10-26 16:40:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:15] testing.INFO: New stock: 9  
[2026-10-26 16:40:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf664fad82c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:15] testing.INFO: Old stock: 100  
[2026-10-26 16:40:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:15] testing.INFO: New stock: 99  
[2026-10-26 16:40:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664fad82c"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf664fbe2b9","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:40:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:15] testing.INFO: Old stock: 99  
[2026-10-26 16:40:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:15] testing.INFO: New stock: 97  
[2026-10-26 16:40:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf664fbe2b9"} 
[2026-10-26 16:40:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf664fc7d40","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-26 16:40:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf66518baed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:17] testing.INFO: Old stock: 50  
[2026-10-26 16:40:17] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:17] testing.INFO: New stock: 48  
[2026-10-26 16:40:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66518baed"} 
[2026-10-26 16:40:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf6651a16f7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:17] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:17] testing.INFO: Old stock: 48  
[2026-10-26 16:40:17] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:40:17] testing.INFO: New stock: 45  
[2026-10-26 16:40:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6651a16f7"} 
[2026-10-26 16:40:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6652e53a5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:18] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:40:18] testing.INFO: Old stock: 20  
[2026-10-26 16:40:18] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:18] testing.INFO: New stock: 18  
[2026-10-26 16:40:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6652e53a5"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf66540890b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66540890b"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf665418502","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665418502"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf66542316d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66542316d"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6adf66542ced3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66542ced3"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6adf665437241","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-26 16:40:20] testing.INFO: Old stock: 1  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 0  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665437241"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6adf665440ed7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665440ed7"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6adf66544a336","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66544a336"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6adf66545513d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66545513d"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6adf66545f48c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66545f48c"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6adf665472455","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-26 16:40:20] testing.INFO: Old stock: 1  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 0  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665472455"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6adf66547d970","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66547d970"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6adf66548838e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66548838e"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6adf6654932ce","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654932ce"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6adf66549dd4a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66549dd4a"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6adf6654a8346","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-26 16:40:20] testing.INFO: Old stock: 1  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 0  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654a8346"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6adf6654b2724","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654b2724"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6adf6654bbfbe","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654bbfbe"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6adf6654c5d51","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654c5d51"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6adf6654cfc48","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654cfc48"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6adf6654dafe4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-26 16:40:20] testing.INFO: Old stock: 1  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 0  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654dafe4"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6adf6654e4e18","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:20] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-26 16:40:20] testing.INFO: Old stock: 50  
[2026-10-26 16:40:20] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:20] testing.INFO: New stock: 49  
[2026-10-26 16:40:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654e4e18"} 
[2026-10-26 16:40:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6adf6654eef11","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6654eef11"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6adf665504a20","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665504a20"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6adf66550f329","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66550f329"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6adf665519006","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-26 16:40:21] testing.INFO: Old stock: 1  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 0  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665519006"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6adf665523be5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665523be5"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6adf66552e146","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66552e146"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6adf665537d01","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf665537d01"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6adf66554135c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-26 16:40:21] testing.INFO: Old stock: 50  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 49  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66554135c"} 
[2026-10-26 16:40:21] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6adf66554c3a3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:21] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-26 16:40:21] testing.INFO: Old stock: 1  
[2026-10-26 16:40:21] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:21] testing.INFO: New stock: 0  
[2026-10-26 16:40:21] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66554c3a3"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf66636da84","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66636da84"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf66638005b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66638005b"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf66638a5d6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66638a5d6"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6adf6663944bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6663944bc"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6adf66639e034","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-26 16:40:35] testing.INFO: Old stock: 1  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 0  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66639e034"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6adf6663a97d5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6663a97d5"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6adf6663b3fde","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6663b3fde"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6adf6663c1722","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6663c1722"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6adf6663d2578","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-26 16:40:35] testing.INFO: Old stock: 50  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 49  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6663d2578"} 
[2026-10-26 16:40:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6adf6663e4140","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:35] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-26 16:40:35] testing.INFO: Old stock: 1  
[2026-10-26 16:40:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:35] testing.INFO: New stock: 0  
[2026-10-26 16:40:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6663e4140"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6adf666401387","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666401387"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6adf6664175b7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664175b7"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6adf6664283ab","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664283ab"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6adf66643625f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66643625f"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6adf666441900","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-26 16:40:36] testing.INFO: Old stock: 1  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 0  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666441900"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6adf66644d706","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66644d706"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6adf6664578d8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664578d8"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6adf666461755","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666461755"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6adf66646bc65","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66646bc65"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6adf666475e1c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-26 16:40:36] testing.INFO: Old stock: 1  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 0  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666475e1c"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6adf666481e62","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666481e62"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6adf66648c89c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66648c89c"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6adf6664971f6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664971f6"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6adf6664a285d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664a285d"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6adf6664ac6f7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-26 16:40:36] testing.INFO: Old stock: 1  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 0  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664ac6f7"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6adf6664b5e0d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664b5e0d"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6adf6664c8a25","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664c8a25"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6adf6664d3136","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664d3136"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6adf6664de7ac","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-26 16:40:36] testing.INFO: Old stock: 50  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 49  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664de7ac"} 
[2026-10-26 16:40:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6adf6664e8a2a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:36] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-26 16:40:36] testing.INFO: Old stock: 1  
[2026-10-26 16:40:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:36] testing.INFO: New stock: 0  
[2026-10-26 16:40:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6664e8a2a"} 
[2026-10-26 16:40:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf666853e1e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:40] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:40:40] testing.INFO: Old stock: 50  
[2026-10-26 16:40:40] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:40] testing.INFO: New stock: 49  
[2026-10-26 16:40:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666853e1e"} 
[2026-10-26 16:40:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf666868c11","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:40] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:40:40] testing.INFO: Old stock: 50  
[2026-10-26 16:40:40] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:40] testing.INFO: New stock: 49  
[2026-10-26 16:40:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666868c11"} 
[2026-10-26 16:40:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6669a62c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:41] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:40:41] testing.INFO: Old stock: 50  
[2026-10-26 16:40:41] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:41] testing.INFO: New stock: 49  
[2026-10-26 16:40:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6669a62c6"} 
[2026-10-26 16:40:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf6669b5db9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:41] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:40:41] testing.INFO: Old stock: 50  
[2026-10-26 16:40:41] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:41] testing.INFO: New stock: 49  
[2026-10-26 16:40:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6669b5db9"} 
[2026-10-26 16:40:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf6669c044f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:41] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:40:41] testing.INFO: Old stock: 50  
[2026-10-26 16:40:41] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:41] testing.INFO: New stock: 49  
[2026-10-26 16:40:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6669c044f"} 
[2026-10-26 16:40:44] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-26 16:40:44"}  
[2026-10-26 16:40:44] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-26 16:40:44] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-26 16:40:44] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-26 16:40:44] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-26 16:40:44] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-26 16:40:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf666c96105","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:44] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:44] testing.INFO: Old stock: 10  
[2026-10-26 16:40:44] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:44] testing.INFO: New stock: 9  
[2026-10-26 16:40:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666c96105"} 
[2026-10-26 16:40:46] testing.ERROR: Error B8B0D7AF: SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}

[previous exception] [object] (Exception(code: 0): SQLSTATE[42S22] at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}
"} 
[2026-10-26 16:40:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf666eaf72e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:46] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:40:46] testing.INFO: Old stock: 70  
[2026-10-26 16:40:46] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:40:46] testing.INFO: New stock: 65  
[2026-10-26 16:40:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666eaf72e"} 
[2026-10-26 16:40:46] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-26 16:40:46] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:40:46] testing.INFO: Old stock: 62  
[2026-10-26 16:40:46] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:46] testing.INFO: New stock: 60  
[2026-10-26 16:40:46] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-26 16:40:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf666f481f3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:47] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:40:47] testing.INFO: Old stock: 59  
[2026-10-26 16:40:47] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:40:47] testing.INFO: New stock: 55  
[2026-10-26 16:40:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf666f481f3"} 
[2026-10-26 16:40:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6670692b3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:48] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:40:48] testing.INFO: Old stock: 10  
[2026-10-26 16:40:48] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:40:48] testing.INFO: New stock: 6  
[2026-10-26 16:40:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6670692b3"} 
[2026-10-26 16:40:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf66709a8ca","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:48] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:40:48] testing.INFO: Old stock: 10  
[2026-10-26 16:40:48] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:40:48] testing.INFO: New stock: 5  
[2026-10-26 16:40:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66709a8ca"} 
[2026-10-26 16:40:48] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6670cdb6f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:48] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:40:48] testing.INFO: Old stock: 10  
[2026-10-26 16:40:48] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:40:48] testing.INFO: New stock: 6  
[2026-10-26 16:40:48] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6670cdb6f"} 
[2026-10-26 16:40:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf66712a407","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:49] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:40:49] testing.INFO: Old stock: 5  
[2026-10-26 16:40:49] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:40:49] testing.INFO: New stock: 1  
[2026-10-26 16:40:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66712a407"} 
[2026-10-26 16:40:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf66715a383","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:49] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-26 16:40:49] testing.INFO: Old stock: 10  
[2026-10-26 16:40:49] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:40:49] testing.INFO: New stock: 5  
[2026-10-26 16:40:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66715a383"} 
[2026-10-26 16:40:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf66719f78c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:49] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-26 16:40:49] testing.INFO: Old stock: 12  
[2026-10-26 16:40:49] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:40:49] testing.INFO: New stock: 7  
[2026-10-26 16:40:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66719f78c"} 
[2026-10-26 16:40:49] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf6671c6eb0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:49] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-26 16:40:49] testing.INFO: Old stock: 12  
[2026-10-26 16:40:49] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:40:49] testing.INFO: New stock: 7  
[2026-10-26 16:40:49] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6671c6eb0"} 
[2026-10-26 16:40:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf667447c6c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:52] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:52] testing.INFO: Old stock: 10  
[2026-10-26 16:40:52] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:40:52] testing.INFO: New stock: 7  
[2026-10-26 16:40:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf667447c6c"} 
[2026-10-26 16:40:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf667489417","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:52] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:52] testing.INFO: Old stock: 10  
[2026-10-26 16:40:52] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:52] testing.INFO: New stock: 9  
[2026-10-26 16:40:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf667489417"} 
[2026-10-26 16:40:52] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf667499696","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:52] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:52] testing.INFO: Old stock: 9  
[2026-10-26 16:40:52] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:52] testing.INFO: New stock: 7  
[2026-10-26 16:40:52] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf667499696"} 
[2026-10-26 16:40:53] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf667568ab3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:53] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:40:53] testing.INFO: Old stock: 10  
[2026-10-26 16:40:53] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:40:53] testing.INFO: New stock: 9  
[2026-10-26 16:40:53] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf667568ab3"} 
[2026-10-26 16:40:54] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6676ab9fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:54] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:40:54] testing.INFO: Old stock: 10  
[2026-10-26 16:40:54] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:54] testing.INFO: New stock: 8  
[2026-10-26 16:40:54] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6676ab9fa"} 
[2026-10-26 16:40:56] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf667821971","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:56] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:40:56] testing.INFO: Old stock: 10  
[2026-10-26 16:40:56] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:56] testing.INFO: New stock: 8  
[2026-10-26 16:40:56] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf667821971"} 
[2026-10-26 16:40:57] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf66792be3c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:57] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:40:57] testing.INFO: Old stock: 10  
[2026-10-26 16:40:57] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:57] testing.INFO: New stock: 8  
[2026-10-26 16:40:57] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf66792be3c"} 
[2026-10-26 16:40:58] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf667a41943","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:40:58] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:40:58] testing.INFO: Old stock: 10  
[2026-10-26 16:40:58] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:40:58] testing.INFO: New stock: 8  
[2026-10-26 16:40:58] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf667a41943"} 
[2026-10-26 16:52:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:27] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:52:27] testing.INFO: Old stock: 20  
[2026-10-26 16:52:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:27] testing.INFO: New stock: 19  
[2026-10-26 16:52:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:27] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:52:27] testing.INFO: Old stock: 20  
[2026-10-26 16:52:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:27] testing.INFO: New stock: 19  
[2026-10-26 16:52:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:52:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:27] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:52:27] testing.INFO: Old stock: 20  
[2026-10-26 16:52:27] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:52:27] testing.INFO: New stock: 17  
[2026-10-26 16:52:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:27] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:52:27] testing.INFO: Old stock: 20  
[2026-10-26 16:52:27] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:52:27] testing.INFO: New stock: 18  
[2026-10-26 16:52:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:28] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:52:28] testing.INFO: Old stock: 20  
[2026-10-26 16:52:28] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:28] testing.INFO: New stock: 19  
[2026-10-26 16:52:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:28] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-26 16:52:28] testing.INFO: Old stock: 20  
[2026-10-26 16:52:28] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:28] testing.INFO: New stock: 19  
[2026-10-26 16:52:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:52:28] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:28] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-26 16:52:28] testing.INFO: Old stock: 20  
[2026-10-26 16:52:28] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:52:28] testing.INFO: New stock: 18  
[2026-10-26 16:52:28] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:37] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:52:37] testing.INFO: Old stock: 20  
[2026-10-26 16:52:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:37] testing.INFO: New stock: 19  
[2026-10-26 16:52:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:38] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:52:38] testing.INFO: Old stock: 20  
[2026-10-26 16:52:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:38] testing.INFO: New stock: 19  
[2026-10-26 16:52:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:52:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:38] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:52:38] testing.INFO: Old stock: 20  
[2026-10-26 16:52:38] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:52:38] testing.INFO: New stock: 17  
[2026-10-26 16:52:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:38] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:52:38] testing.INFO: Old stock: 20  
[2026-10-26 16:52:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:38] testing.INFO: New stock: 19  
[2026-10-26 16:52:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:52:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:39] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:52:39] testing.INFO: Old stock: 20  
[2026-10-26 16:52:39] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:52:39] testing.INFO: New stock: 18  
[2026-10-26 16:52:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:40] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:52:40] testing.INFO: Old stock: 20  
[2026-10-26 16:52:40] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:40] testing.INFO: New stock: 19  
[2026-10-26 16:52:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:40] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-26 16:52:40] testing.INFO: Old stock: 20  
[2026-10-26 16:52:40] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:52:40] testing.INFO: New stock: 19  
[2026-10-26 16:52:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:52:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:40] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-26 16:52:40] testing.INFO: Old stock: 20  
[2026-10-26 16:52:40] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:52:40] testing.INFO: New stock: 18  
[2026-10-26 16:52:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:47] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:47] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:52:47] testing.INFO: Old stock: 20  
[2026-10-26 16:52:47] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:52:47] testing.INFO: New stock: 18  
[2026-10-26 16:52:47] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:52:55] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:52:55] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:52:55] testing.INFO: Old stock: 20  
[2026-10-26 16:52:55] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:52:55] testing.INFO: New stock: 18  
[2026-10-26 16:52:55] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:01] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:01] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:01] testing.INFO: Old stock: 20  
[2026-10-26 16:53:01] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:01] testing.INFO: New stock: 18  
[2026-10-26 16:53:01] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6956b1237","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:10] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:10] testing.INFO: Old stock: 100  
[2026-10-26 16:53:10] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:10] testing.INFO: New stock: 96  
[2026-10-26 16:53:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6956b1237"} 
[2026-10-26 16:53:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf6956ba757","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:10] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:10] testing.INFO: Old stock: 96  
[2026-10-26 16:53:10] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:53:10] testing.INFO: New stock: 65  
[2026-10-26 16:53:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6956ba757"} 
[2026-10-26 16:53:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6956d45ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:10] testing.INFO: Old stock: 100  
[2026-10-26 16:53:10] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:10] testing.INFO: New stock: 96  
[2026-10-26 16:53:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6956d45ae"} 
[2026-10-26 16:53:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf6956db2b0","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:10] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:10] testing.INFO: Old stock: 96  
[2026-10-26 16:53:10] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:53:10] testing.INFO: New stock: 65  
[2026-10-26 16:53:10] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6956db2b0"} 
[2026-10-26 16:53:10] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6956f14ae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:11] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:11] testing.INFO: Old stock: 100  
[2026-10-26 16:53:11] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:11] testing.INFO: New stock: 96  
[2026-10-26 16:53:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6956f14ae"} 
[2026-10-26 16:53:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf695705aed","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:11] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:11] testing.INFO: Old stock: 96  
[2026-10-26 16:53:11] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:53:11] testing.INFO: New stock: 65  
[2026-10-26 16:53:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695705aed"} 
[2026-10-26 16:53:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf695742a66","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:11] testing.INFO: Old stock: 100  
[2026-10-26 16:53:11] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:11] testing.INFO: New stock: 96  
[2026-10-26 16:53:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695742a66"} 
[2026-10-26 16:53:11] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":31}],"invoice_no":"INV-6adf69574986c","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:11] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:11] testing.INFO: Old stock: 96  
[2026-10-26 16:53:11] testing.INFO: Quantity deducted: 31  
[2026-10-26 16:53:11] testing.INFO: New stock: 65  
[2026-10-26 16:53:11] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69574986c"} 
[2026-10-26 16:53:11] testing.INFO: BulkUpload: created or found category {"name":"Antibiotics","id":1,"row":2} 
[2026-10-26 16:53:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf69586b729","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:12] testing.INFO: Old stock: 200  
[2026-10-26 16:53:12] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:12] testing.INFO: New stock: 196  
[2026-10-26 16:53:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69586b729"} 
[2026-10-26 16:53:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695872009","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:12] testing.INFO: Old stock: 196  
[2026-10-26 16:53:12] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:12] testing.INFO: New stock: 194  
[2026-10-26 16:53:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695872009"} 
[2026-10-26 16:53:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf695876a51","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-26 16:53:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf69587c12a","payment_method":"card","payment_status":"paid"}} 
[2026-10-26 16:53:12] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:12] testing.INFO: Old stock: 191  
[2026-10-26 16:53:12] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:12] testing.INFO: New stock: 190  
[2026-10-26 16:53:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69587c12a"} 
[2026-10-26 16:53:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6958ecb0f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:12] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:12] testing.INFO: Old stock: 200  
[2026-10-26 16:53:12] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:12] testing.INFO: New stock: 196  
[2026-10-26 16:53:12] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6958ecb0f"} 
[2026-10-26 16:53:12] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6958f3535","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:13] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:13] testing.INFO: Old stock: 196  
[2026-10-26 16:53:13] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:13] testing.INFO: New stock: 194  
[2026-10-26 16:53:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6958f3535"} 
[2026-10-26 16:53:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf69591b1b5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:13] testing.INFO: Old stock: 200  
[2026-10-26 16:53:13] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:13] testing.INFO: New stock: 196  
[2026-10-26 16:53:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69591b1b5"} 
[2026-10-26 16:53:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf695946328","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:13] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:13] testing.INFO: Old stock: 196  
[2026-10-26 16:53:13] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:13] testing.INFO: New stock: 195  
[2026-10-26 16:53:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695946328"} 
[2026-10-26 16:53:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6959bdc27","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:13] testing.INFO: Old stock: 200  
[2026-10-26 16:53:13] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:13] testing.INFO: New stock: 196  
[2026-10-26 16:53:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6959bdc27"} 
[2026-10-26 16:53:13] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-LATE","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:23:13+02:00"}} 
[2026-10-26 16:53:13] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:13] testing.INFO: Old stock: 196  
[2026-10-26 16:53:13] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:13] testing.INFO: New stock: 195  
[2026-10-26 16:53:13] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-LATE"} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf695a717a3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:14] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:14] testing.INFO: Old stock: 10  
[2026-10-26 16:53:14] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:53:14] testing.INFO: New stock: 7  
[2026-10-26 16:53:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695a717a3"} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2,"price":1,"subtotal":2}],"invoice_no":"INV-6adf695a84515","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:14] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:14] testing.INFO: Old stock: 10  
[2026-10-26 16:53:14] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:14] testing.INFO: New stock: 8  
[2026-10-26 16:53:14] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695a84515"} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf695a97971","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":2,"request_data":{"items":[{"product_id":1,"quantity":3},{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf695aa5cd1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":-4}],"invoice_no":"INV-6adf695ab4dbc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695ac353f","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"airtel_money","amount":500}]}} 
[2026-10-26 16:53:14] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695ad1012","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1500},{"method":"airtel_money","amount":500}]}} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695b01164","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:15] testing.INFO: New stock: 8  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695b01164"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695b1e426","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:15] testing.INFO: New stock: 8  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695b1e426"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695b3a769","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:15] testing.INFO: New stock: 8  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695b3a769"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695b50e9c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:15] testing.INFO: Old stock: 3  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:15] testing.INFO: New stock: 1  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695b50e9c"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf695b7e849","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Gone Widget  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:15] testing.INFO: New stock: 8  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695b7e849"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:15] testing.INFO: New stock: 8  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:15] testing.INFO: New stock: 9  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T14:53:00+02:00"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:15] testing.INFO: New stock: 9  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-29T16:53:15+02:00"}} 
[2026-10-26 16:53:15] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:15] testing.INFO: Old stock: 10  
[2026-10-26 16:53:15] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:15] testing.INFO: New stock: 9  
[2026-10-26 16:53:15] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:53:15] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:53:15+02:00"}} 
[2026-10-26 16:53:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:53:16+02:00"}} 
[2026-10-26 16:53:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:53:16+02:00"}} 
[2026-10-26 16:53:16] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:53:16] testing.INFO: Old stock: 5  
[2026-10-26 16:53:16] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:53:16] testing.INFO: New stock: 2  
[2026-10-26 16:53:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:53:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T16:53:16+02:00","is_split_payment":true,"payments":[{"method":"cash","amount":500},{"method":"mpamba","amount":400}],"paid_total":900}} 
[2026-10-26 16:53:16] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-OFFLINE-1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-26T13:53:16+02:00"}} 
[2026-10-26 16:53:16] testing.INFO: Stock deduction for product: Test Product 9  
[2026-10-26 16:53:16] testing.INFO: Old stock: 10  
[2026-10-26 16:53:16] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:16] testing.INFO: New stock: 9  
[2026-10-26 16:53:16] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-1"} 
[2026-10-26 16:53:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf695d9f1c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:17] testing.INFO: Stock deduction for product: Paracetamol 500mg  
[2026-10-26 16:53:17] testing.INFO: Old stock: 50  
[2026-10-26 16:53:17] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:17] testing.INFO: New stock: 49  
[2026-10-26 16:53:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695d9f1c8"} 
[2026-10-26 16:53:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":2}],"invoice_no":"INV-6adf695da66d2","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:17] testing.INFO: Stock deduction for product: Amoxicillin 250mg  
[2026-10-26 16:53:17] testing.INFO: Old stock: 50  
[2026-10-26 16:53:17] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:17] testing.INFO: New stock: 48  
[2026-10-26 16:53:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695da66d2"} 
[2026-10-26 16:53:17] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":3}],"invoice_no":"INV-6adf695dabdd0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:17] testing.INFO: Stock deduction for product: ORS Sachets  
[2026-10-26 16:53:17] testing.INFO: Old stock: 50  
[2026-10-26 16:53:17] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:53:17] testing.INFO: New stock: 47  
[2026-10-26 16:53:17] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695dabdd0"} 
[2026-10-26 16:53:18] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adf695e61c91","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:18] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:53:18] testing.INFO: Old stock: 16  
[2026-10-26 16:53:18] testing.INFO: Quantity deducted: 6  
[2026-10-26 16:53:18] testing.INFO: New stock: 10  
[2026-10-26 16:53:18] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695e61c91"} 
[2026-10-26 16:53:19] testing.INFO: Product Store - Request Data {"all_data":{"name":"Batch Syrup","purchase_price":500,"selling_price":900,"supplier_id":1,"purchase_quantity":12,"batch_no":"SYR-01","expiry_date":"2027-07-07"},"category_id":null,"brand_id":null,"supplier_id":1} 
[2026-10-26 16:53:19] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-26 16:53:19] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"Batch Syrup","supplier_id":1,"purchase_price":500,"selling_price":900,"expiry_date":"2027-07-07","batch_no":"SYR-01","purchase_quantity":12,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":12,"last_purchase_price":500,"last_purchase_date":"2026-10-26 16:53:19"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-26 16:53:19] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"Batch Syrup","product_sku":"PRD-00001"} 
[2026-10-26 16:53:19] testing.INFO: Product Store - Request Data {"all_data":{"name":"Old Syrup","purchase_price":500,"selling_price":900,"purchase_quantity":3,"expiry_date":"2026-10-25"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-26 16:53:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf695fc0d8f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:19] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf695fc8089","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:19] testing.INFO: Stock deduction for product: Test Product 19  
[2026-10-26 16:53:19] testing.INFO: Old stock: 2  
[2026-10-26 16:53:19] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:19] testing.INFO: New stock: 1  
[2026-10-26 16:53:19] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf695fc8089"} 
[2026-10-26 16:53:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-AFTER","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:20] testing.INFO: Stock deduction for product: Vitamin C Tabs  
[2026-10-26 16:53:20] testing.INFO: Old stock: 35  
[2026-10-26 16:53:20] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:20] testing.INFO: New stock: 33  
[2026-10-26 16:53:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-AFTER"} 
[2026-10-26 16:53:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf6960503d2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:20] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-26 16:53:20] testing.INFO: Old stock: 13  
[2026-10-26 16:53:20] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:53:20] testing.INFO: New stock: 8  
[2026-10-26 16:53:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6960503d2"} 
[2026-10-26 16:53:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf696057337","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:20] testing.INFO: Stock deduction for product: Test Product 24  
[2026-10-26 16:53:20] testing.INFO: Old stock: 8  
[2026-10-26 16:53:20] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:20] testing.INFO: New stock: 4  
[2026-10-26 16:53:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696057337"} 
[2026-10-26 16:53:20] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":6}],"invoice_no":"INV-6adf69607f42b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:20] testing.INFO: Stock deduction for product: Test Product 25  
[2026-10-26 16:53:20] testing.INFO: Old stock: 8  
[2026-10-26 16:53:20] testing.INFO: Quantity deducted: 6  
[2026-10-26 16:53:20] testing.INFO: New stock: 2  
[2026-10-26 16:53:20] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69607f42b"} 
[2026-10-26 16:53:20] testing.INFO: Product Store - Request Data {"all_data":{"name":"No Supplier Soap","purchase_price":300,"selling_price":500,"supplier_id":null,"purchase_quantity":9,"expiry_date":"2027-05-05"},"category_id":null,"brand_id":null,"supplier_id":null} 
[2026-10-26 16:53:20] testing.INFO: Product Store - Validation Success {"validated_data":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9},"category_id_value":"null","brand_id_value":"null"} 
[2026-10-26 16:53:20] testing.INFO: Product Store - About to Create Product {"data_for_creation":{"name":"No Supplier Soap","supplier_id":null,"purchase_price":300,"selling_price":500,"expiry_date":"2027-05-05","purchase_quantity":9,"sku":"PRD-00001","business_location":"Pharmacy","product_type":"Single","current_stock":9,"last_purchase_price":300,"last_purchase_date":"2026-10-26 16:53:20"},"business_location":"Pharmacy","product_type":"Single"} 
[2026-10-26 16:53:20] testing.INFO: Product Store - Product Created {"product_id":1,"product_name":"No Supplier Soap","product_sku":"PRD-00001"} 
[2026-10-26 16:53:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-1792675837162738","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:22] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:22] testing.INFO: Old stock: 10  
[2026-10-26 16:53:22] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:22] testing.INFO: New stock: 9  
[2026-10-26 16:53:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792675837162738"} 
[2026-10-26 16:53:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-1792600000111222","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:22] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:22] testing.INFO: Old stock: 10  
[2026-10-26 16:53:22] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:22] testing.INFO: New stock: 9  
[2026-10-26 16:53:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-1792600000111222"} 
[2026-10-26 16:53:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MINE-000001","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:22] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:22] testing.INFO: Old stock: 10  
[2026-10-26 16:53:22] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:22] testing.INFO: New stock: 9  
[2026-10-26 16:53:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MINE-000001"} 
[2026-10-26 16:53:22] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-THEIRS-00002","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:22] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:22] testing.INFO: Old stock: 10  
[2026-10-26 16:53:22] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:22] testing.INFO: New stock: 9  
[2026-10-26 16:53:22] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-THEIRS-00002"} 
[2026-10-26 16:53:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf69630e52a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:23] testing.INFO: Old stock: 100  
[2026-10-26 16:53:23] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:23] testing.INFO: New stock: 99  
[2026-10-26 16:53:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69630e52a"} 
[2026-10-26 16:53:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf696316774","payment_method":"airtel_money","payment_status":"paid"}} 
[2026-10-26 16:53:23] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:23] testing.INFO: Old stock: 99  
[2026-10-26 16:53:23] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:23] testing.INFO: New stock: 97  
[2026-10-26 16:53:23] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696316774"} 
[2026-10-26 16:53:23] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf69631b045","payment_method":"cash","payment_status":"paid","is_split_payment":true,"payments":[{"method":"cash","amount":1000},{"method":"mpamba","amount":2000}]}} 
[2026-10-26 16:53:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf696405d95","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:24] testing.INFO: Old stock: 50  
[2026-10-26 16:53:24] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:24] testing.INFO: New stock: 48  
[2026-10-26 16:53:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696405d95"} 
[2026-10-26 16:53:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf696413112","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:24] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:24] testing.INFO: Old stock: 48  
[2026-10-26 16:53:24] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:53:24] testing.INFO: New stock: 45  
[2026-10-26 16:53:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696413112"} 
[2026-10-26 16:53:24] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6964853c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:24] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:24] testing.INFO: Old stock: 20  
[2026-10-26 16:53:24] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:24] testing.INFO: New stock: 18  
[2026-10-26 16:53:24] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6964853c1"} 
[2026-10-26 16:53:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:25] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:25] testing.INFO: Old stock: 20  
[2026-10-26 16:53:25] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:25] testing.INFO: New stock: 19  
[2026-10-26 16:53:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:25] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:25] testing.INFO: Old stock: 20  
[2026-10-26 16:53:25] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:25] testing.INFO: New stock: 19  
[2026-10-26 16:53:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:53:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:25] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:25] testing.INFO: Old stock: 20  
[2026-10-26 16:53:25] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:53:25] testing.INFO: New stock: 17  
[2026-10-26 16:53:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:25] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:25] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:25] testing.INFO: Old stock: 20  
[2026-10-26 16:53:25] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:25] testing.INFO: New stock: 19  
[2026-10-26 16:53:25] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:53:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:26] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:53:26] testing.INFO: Old stock: 20  
[2026-10-26 16:53:26] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:26] testing.INFO: New stock: 18  
[2026-10-26 16:53:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:26] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:53:26] testing.INFO: Old stock: 20  
[2026-10-26 16:53:26] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:26] testing.INFO: New stock: 19  
[2026-10-26 16:53:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:26] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-JOHN-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:26] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-26 16:53:26] testing.INFO: Old stock: 20  
[2026-10-26 16:53:26] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:26] testing.INFO: New stock: 19  
[2026-10-26 16:53:26] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-JOHN-1"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-MARY-1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-26 16:53:27] testing.INFO: Old stock: 20  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:27] testing.INFO: New stock: 18  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-MARY-1"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf69673eea4","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69673eea4"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf6967468ba","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967468ba"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf69674bbd3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69674bbd3"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6adf696750dd5","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696750dd5"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6adf6967599db","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-26 16:53:27] testing.INFO: Old stock: 1  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 0  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967599db"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6adf696760bae","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696760bae"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6adf696765bc6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696765bc6"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6adf69676b1c7","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69676b1c7"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6adf696770427","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696770427"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6adf696775665","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-26 16:53:27] testing.INFO: Old stock: 1  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 0  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696775665"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6adf69677a823","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69677a823"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6adf696780076","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696780076"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6adf6967854cd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967854cd"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6adf69678a92d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69678a92d"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6adf69678fad1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-26 16:53:27] testing.INFO: Old stock: 1  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 0  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69678fad1"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6adf696794b77","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696794b77"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6adf696799e26","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696799e26"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6adf69679f7dd","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69679f7dd"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6adf6967a4d3b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967a4d3b"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6adf6967a9eed","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-26 16:53:27] testing.INFO: Old stock: 1  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 0  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967a9eed"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6adf6967af552","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967af552"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6adf6967b445f","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967b445f"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6adf6967b951d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967b951d"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6adf6967bec5c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967bec5c"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6adf6967c3f4c","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-26 16:53:27] testing.INFO: Old stock: 1  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 0  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967c3f4c"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6adf6967c8f79","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967c8f79"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6adf6967ce057","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967ce057"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6adf6967d308a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967d308a"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6adf6967d89df","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-26 16:53:27] testing.INFO: Old stock: 50  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 49  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967d89df"} 
[2026-10-26 16:53:27] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6adf6967ddbc8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:27] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-26 16:53:27] testing.INFO: Old stock: 1  
[2026-10-26 16:53:27] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:27] testing.INFO: New stock: 0  
[2026-10-26 16:53:27] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6967ddbc8"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf696e6ef73","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e6ef73"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf696e774fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e774fa"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf696e7ca51","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e7ca51"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":4,"quantity":1}],"invoice_no":"INV-6adf696e820de","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 4  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e820de"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":5,"quantity":1}],"invoice_no":"INV-6adf696e87681","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 5  
[2026-10-26 16:53:34] testing.INFO: Old stock: 1  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 0  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e87681"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":6,"quantity":1}],"invoice_no":"INV-6adf696e8ca3a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 6  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e8ca3a"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":7,"quantity":1}],"invoice_no":"INV-6adf696e927a3","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 7  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e927a3"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":8,"quantity":1}],"invoice_no":"INV-6adf696e97d2a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 8  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e97d2a"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":9,"quantity":1}],"invoice_no":"INV-6adf696e9d7fa","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 9  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696e9d7fa"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":10,"quantity":1}],"invoice_no":"INV-6adf696ea2e46","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 10  
[2026-10-26 16:53:34] testing.INFO: Old stock: 1  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 0  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ea2e46"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":11,"quantity":1}],"invoice_no":"INV-6adf696ea8092","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 11  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ea8092"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":12,"quantity":1}],"invoice_no":"INV-6adf696ead2bc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 12  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ead2bc"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":13,"quantity":1}],"invoice_no":"INV-6adf696eb30d9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 13  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696eb30d9"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":14,"quantity":1}],"invoice_no":"INV-6adf696eb81c1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 14  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696eb81c1"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":15,"quantity":1}],"invoice_no":"INV-6adf696ebd39e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 15  
[2026-10-26 16:53:34] testing.INFO: Old stock: 1  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 0  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ebd39e"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":16,"quantity":1}],"invoice_no":"INV-6adf696ec2546","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 16  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ec2546"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":17,"quantity":1}],"invoice_no":"INV-6adf696ec73b2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 17  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ec73b2"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":18,"quantity":1}],"invoice_no":"INV-6adf696eccd2d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 18  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696eccd2d"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":19,"quantity":1}],"invoice_no":"INV-6adf696ed2409","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 19  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ed2409"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":20,"quantity":1}],"invoice_no":"INV-6adf696ed782b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 20  
[2026-10-26 16:53:34] testing.INFO: Old stock: 1  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 0  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ed782b"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":21,"quantity":1}],"invoice_no":"INV-6adf696edd10e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 21  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696edd10e"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":22,"quantity":1}],"invoice_no":"INV-6adf696ee22f9","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 22  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ee22f9"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":23,"quantity":1}],"invoice_no":"INV-6adf696ee7423","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 23  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ee7423"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":24,"quantity":1}],"invoice_no":"INV-6adf696eecfbb","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:34] testing.INFO: Stock deduction for product: Report Item 24  
[2026-10-26 16:53:34] testing.INFO: Old stock: 50  
[2026-10-26 16:53:34] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:34] testing.INFO: New stock: 49  
[2026-10-26 16:53:34] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696eecfbb"} 
[2026-10-26 16:53:34] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":25,"quantity":1}],"invoice_no":"INV-6adf696ef266d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:35] testing.INFO: Stock deduction for product: Report Item 25  
[2026-10-26 16:53:35] testing.INFO: Old stock: 1  
[2026-10-26 16:53:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:35] testing.INFO: New stock: 0  
[2026-10-26 16:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696ef266d"} 
[2026-10-26 16:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":26,"quantity":1}],"invoice_no":"INV-6adf696f038f6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:35] testing.INFO: Stock deduction for product: Report Item 26  
[2026-10-26 16:53:35] testing.INFO: Old stock: 50  
[2026-10-26 16:53:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:35] testing.INFO: New stock: 49  
[2026-10-26 16:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696f038f6"} 
[2026-10-26 16:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":27,"quantity":1}],"invoice_no":"INV-6adf696f0d3d1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:35] testing.INFO: Stock deduction for product: Report Item 27  
[2026-10-26 16:53:35] testing.INFO: Old stock: 50  
[2026-10-26 16:53:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:35] testing.INFO: New stock: 49  
[2026-10-26 16:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696f0d3d1"} 
[2026-10-26 16:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":28,"quantity":1}],"invoice_no":"INV-6adf696f144c8","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:35] testing.INFO: Stock deduction for product: Report Item 28  
[2026-10-26 16:53:35] testing.INFO: Old stock: 50  
[2026-10-26 16:53:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:35] testing.INFO: New stock: 49  
[2026-10-26 16:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696f144c8"} 
[2026-10-26 16:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":29,"quantity":1}],"invoice_no":"INV-6adf696f19f71","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:35] testing.INFO: Stock deduction for product: Report Item 29  
[2026-10-26 16:53:35] testing.INFO: Old stock: 50  
[2026-10-26 16:53:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:35] testing.INFO: New stock: 49  
[2026-10-26 16:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696f19f71"} 
[2026-10-26 16:53:35] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":30,"quantity":1}],"invoice_no":"INV-6adf696f1f473","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:35] testing.INFO: Stock deduction for product: Report Item 30  
[2026-10-26 16:53:35] testing.INFO: Old stock: 1  
[2026-10-26 16:53:35] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:35] testing.INFO: New stock: 0  
[2026-10-26 16:53:35] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf696f1f473"} 
[2026-10-26 16:53:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf697099da6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:36] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:53:36] testing.INFO: Old stock: 50  
[2026-10-26 16:53:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:36] testing.INFO: New stock: 49  
[2026-10-26 16:53:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf697099da6"} 
[2026-10-26 16:53:36] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf6970a1d46","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:36] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:53:36] testing.INFO: Old stock: 50  
[2026-10-26 16:53:36] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:36] testing.INFO: New stock: 49  
[2026-10-26 16:53:36] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6970a1d46"} 
[2026-10-26 16:53:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6971651c2","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:37] testing.INFO: Stock deduction for product: Report Item 1  
[2026-10-26 16:53:37] testing.INFO: Old stock: 50  
[2026-10-26 16:53:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:37] testing.INFO: New stock: 49  
[2026-10-26 16:53:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6971651c2"} 
[2026-10-26 16:53:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":2,"quantity":1}],"invoice_no":"INV-6adf69716c80d","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:37] testing.INFO: Stock deduction for product: Report Item 2  
[2026-10-26 16:53:37] testing.INFO: Old stock: 50  
[2026-10-26 16:53:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:37] testing.INFO: New stock: 49  
[2026-10-26 16:53:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69716c80d"} 
[2026-10-26 16:53:37] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":3,"quantity":1}],"invoice_no":"INV-6adf697171a87","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:37] testing.INFO: Stock deduction for product: Report Item 3  
[2026-10-26 16:53:37] testing.INFO: Old stock: 50  
[2026-10-26 16:53:37] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:37] testing.INFO: New stock: 49  
[2026-10-26 16:53:37] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf697171a87"} 
[2026-10-26 16:53:38] testing.INFO: SalesSummary Debug - Input: {"start_date":"2026-10-20","end_date":"2026-10-20","current_cat_time":"2026-10-26 16:53:38"}  
[2026-10-26 16:53:38] testing.INFO: Start filter applied: 2026-10-20 00:00:00  
[2026-10-26 16:53:38] testing.INFO: End filter applied: 2026-10-20 23:59:59  
[2026-10-26 16:53:38] testing.INFO: Payments retrieved: 2 payments, total: 6000  
[2026-10-26 16:53:38] testing.INFO: Payment details: [{"id":2,"amount":"2000.00","method":"cash","created_at":"2026-10-20T06:00:00.000000Z","sale_id":2},{"id":3,"amount":"4000.00","method":"cash","created_at":"2026-10-20T20:30:00.000000Z","sale_id":3}]  
[2026-10-26 16:53:38] testing.INFO: Final totals: {"total_revenue":6000,"total_transactions":2,"payment_breakdown":{"cash":{"amount":6000,"count":2}}}  
[2026-10-26 16:53:38] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6972b8d92","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:38] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:38] testing.INFO: Old stock: 10  
[2026-10-26 16:53:38] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:38] testing.INFO: New stock: 9  
[2026-10-26 16:53:38] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6972b8d92"} 
[2026-10-26 16:53:39] testing.ERROR: Error BD9B64A9: SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 0): SQLSTATE[42S22] (Connection: mysql, SQL: select * from `users` where `password` = x) at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}

[previous exception] [object] (Exception(code: 0): SQLSTATE[42S22] at C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/tests/Feature/SecurityHardeningTest.php:99)
[stacktrace]
#0 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(1667): Tests/Feature/SecurityHardeningTest->test_database_errors_are_not_shown_to_users()
#1 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(519): PHPUnit/Framework/TestCase->runTest()
#2 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestRunner/TestRunner.php(87): PHPUnit/Framework/TestCase->runBare()
#3 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestCase.php(365): PHPUnit/Framework/TestRunner->run(Object(Tests/Feature/SecurityHardeningTest))
#4 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestCase->run()
#5 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#6 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/Framework/TestSuite.php(369): PHPUnit/Framework/TestSuite->run()
#7 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(64): PHPUnit/Framework/TestSuite->run()
#8 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/src/TextUI/Application.php(211): PHPUnit/TextUI/TestRunner->run(Object(PHPUnit/TextUI/Configuration/Configuration), Object(PHPUnit/Runner/ResultCache/DefaultResultCache), Object(PHPUnit/Framework/TestSuite))
#9 C:/Users/Solomon/Downloads/area25v1/area25updated/area25V2/vendor/phpunit/phpunit/phpunit(104): PHPUnit/TextUI/Application->run(Array)
#10 {main}
"} 
[2026-10-26 16:53:39] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf6973e4920","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:39] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:53:39] testing.INFO: Old stock: 70  
[2026-10-26 16:53:39] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:53:39] testing.INFO: New stock: 65  
[2026-10-26 16:53:39] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6973e4920"} 
[2026-10-26 16:53:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-OFFLINE-DAY1","payment_method":"cash","payment_status":"paid","offline":true,"sold_at":"2026-10-19T11:30:00+02:00"}} 
[2026-10-26 16:53:40] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:53:40] testing.INFO: Old stock: 62  
[2026-10-26 16:53:40] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:40] testing.INFO: New stock: 60  
[2026-10-26 16:53:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-OFFLINE-DAY1"} 
[2026-10-26 16:53:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf69743acfc","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:40] testing.INFO: Stock deduction for product: Day Widget  
[2026-10-26 16:53:40] testing.INFO: Old stock: 59  
[2026-10-26 16:53:40] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:40] testing.INFO: New stock: 55  
[2026-10-26 16:53:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69743acfc"} 
[2026-10-26 16:53:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6974c90c6","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:40] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:40] testing.INFO: Old stock: 10  
[2026-10-26 16:53:40] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:40] testing.INFO: New stock: 6  
[2026-10-26 16:53:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6974c90c6"} 
[2026-10-26 16:53:40] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf6974e2451","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:40] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:40] testing.INFO: Old stock: 10  
[2026-10-26 16:53:40] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:53:40] testing.INFO: New stock: 5  
[2026-10-26 16:53:40] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6974e2451"} 
[2026-10-26 16:53:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf697507c76","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:41] testing.INFO: Stock deduction for product: Test Product 5  
[2026-10-26 16:53:41] testing.INFO: Old stock: 10  
[2026-10-26 16:53:41] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:41] testing.INFO: New stock: 6  
[2026-10-26 16:53:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf697507c76"} 
[2026-10-26 16:53:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":4}],"invoice_no":"INV-6adf6975299ef","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:41] testing.INFO: Stock deduction for product: Test Product 6  
[2026-10-26 16:53:41] testing.INFO: Old stock: 5  
[2026-10-26 16:53:41] testing.INFO: Quantity deducted: 4  
[2026-10-26 16:53:41] testing.INFO: New stock: 1  
[2026-10-26 16:53:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6975299ef"} 
[2026-10-26 16:53:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf697541ad0","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:41] testing.INFO: Stock deduction for product: Test Product 7  
[2026-10-26 16:53:41] testing.INFO: Old stock: 10  
[2026-10-26 16:53:41] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:53:41] testing.INFO: New stock: 5  
[2026-10-26 16:53:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf697541ad0"} 
[2026-10-26 16:53:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf697566a24","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:41] testing.INFO: Stock deduction for product: Test Product 8  
[2026-10-26 16:53:41] testing.INFO: Old stock: 12  
[2026-10-26 16:53:41] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:53:41] testing.INFO: New stock: 7  
[2026-10-26 16:53:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf697566a24"} 
[2026-10-26 16:53:41] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":5}],"invoice_no":"INV-6adf69757e39e","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:41] testing.INFO: Stock deduction for product: Report Widget  
[2026-10-26 16:53:41] testing.INFO: Old stock: 12  
[2026-10-26 16:53:41] testing.INFO: Quantity deducted: 5  
[2026-10-26 16:53:41] testing.INFO: New stock: 7  
[2026-10-26 16:53:41] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69757e39e"} 
[2026-10-26 16:53:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":3}],"invoice_no":"INV-6adf6976b7b93","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:42] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:42] testing.INFO: Old stock: 10  
[2026-10-26 16:53:42] testing.INFO: Quantity deducted: 3  
[2026-10-26 16:53:42] testing.INFO: New stock: 7  
[2026-10-26 16:53:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6976b7b93"} 
[2026-10-26 16:53:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf6976d0f7a","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:42] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:42] testing.INFO: Old stock: 10  
[2026-10-26 16:53:42] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:42] testing.INFO: New stock: 9  
[2026-10-26 16:53:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6976d0f7a"} 
[2026-10-26 16:53:42] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6976d8326","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:42] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:42] testing.INFO: Old stock: 9  
[2026-10-26 16:53:42] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:42] testing.INFO: New stock: 7  
[2026-10-26 16:53:42] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6976d8326"} 
[2026-10-26 16:53:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":1}],"invoice_no":"INV-6adf69774288b","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:43] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:43] testing.INFO: Old stock: 10  
[2026-10-26 16:53:43] testing.INFO: Quantity deducted: 1  
[2026-10-26 16:53:43] testing.INFO: New stock: 9  
[2026-10-26 16:53:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69774288b"} 
[2026-10-26 16:53:43] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6977d5e28","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:43] testing.INFO: Stock deduction for product: Test Product 1  
[2026-10-26 16:53:43] testing.INFO: Old stock: 10  
[2026-10-26 16:53:43] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:43] testing.INFO: New stock: 8  
[2026-10-26 16:53:43] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6977d5e28"} 
[2026-10-26 16:53:44] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf697898074","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:44] testing.INFO: Stock deduction for product: Test Product 2  
[2026-10-26 16:53:44] testing.INFO: Old stock: 10  
[2026-10-26 16:53:44] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:44] testing.INFO: New stock: 8  
[2026-10-26 16:53:44] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf697898074"} 
[2026-10-26 16:53:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf69792d336","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:45] testing.INFO: Stock deduction for product: Test Product 3  
[2026-10-26 16:53:45] testing.INFO: Old stock: 10  
[2026-10-26 16:53:45] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:45] testing.INFO: New stock: 8  
[2026-10-26 16:53:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf69792d336"} 
[2026-10-26 16:53:45] testing.INFO: Finalize sale attempt {"cart_items":1,"request_data":{"items":[{"product_id":1,"quantity":2}],"invoice_no":"INV-6adf6979a43d1","payment_method":"cash","payment_status":"paid"}} 
[2026-10-26 16:53:45] testing.INFO: Stock deduction for product: Test Product 4  
[2026-10-26 16:53:45] testing.INFO: Old stock: 10  
[2026-10-26 16:53:45] testing.INFO: Quantity deducted: 2  
[2026-10-26 16:53:45] testing.INFO: New stock: 8  
[2026-10-26 16:53:45] testing.INFO: Cart cleared after successful sale {"invoice_no":"INV-6adf6979a43d1"} 
[2026-11-11 18:34:21] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(334): Illuminate\\Auth\\SessionGuard->check()
#15 laravel-serializable-closure://function () {
    return \\response()->json(['token' => \\csrf_token(), 'authenticated' => \\auth()->check()])
        ->header('Cache-Control', 'no-store, no-cache, must-revalidate');
}(3): Illuminate\\Auth\\AuthManager->__call('check', Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#21 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#66 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(334): Illuminate\\Auth\\SessionGuard->check()
#26 laravel-serializable-closure://function () {
    return \\response()->json(['token' => \\csrf_token(), 'authenticated' => \\auth()->check()])
        ->header('Cache-Control', 'no-store, no-cache, must-revalidate');
}(3): Illuminate\\Auth\\AuthManager->__call('check', Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#32 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#69 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#70 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#71 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#72 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#73 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#74 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#75 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#76 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#77 {main}
"} 
[2026-11-11 18:34:23] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#58 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#68 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#69 {main}
"} 
[2026-11-11 18:34:25] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(334): Illuminate\\Auth\\SessionGuard->check()
#15 laravel-serializable-closure://function () {
    return \\response()->json(['token' => \\csrf_token(), 'authenticated' => \\auth()->check()])
        ->header('Cache-Control', 'no-store, no-cache, must-revalidate');
}(3): Illuminate\\Auth\\AuthManager->__call('check', Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#21 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#66 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(334): Illuminate\\Auth\\SessionGuard->check()
#26 laravel-serializable-closure://function () {
    return \\response()->json(['token' => \\csrf_token(), 'authenticated' => \\auth()->check()])
        ->header('Cache-Control', 'no-store, no-cache, must-revalidate');
}(3): Illuminate\\Auth\\AuthManager->__call('check', Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#32 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#69 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#70 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#71 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#72 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#73 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#74 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#75 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#76 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#77 {main}
"} 
[2026-11-11 18:35:14] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#58 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#68 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#69 {main}
"} 
[2026-11-11 18:35:52] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 10 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 10 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(10)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(334): Illuminate\\Auth\\SessionGuard->check()
#15 laravel-serializable-closure://function () {
    return \\response()->json(['token' => \\csrf_token(), 'authenticated' => \\auth()->check()])
        ->header('Cache-Control', 'no-store, no-cache, must-revalidate');
}(3): Illuminate\\Auth\\AuthManager->__call('check', Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#21 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#66 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(10)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/AuthManager.php(334): Illuminate\\Auth\\SessionGuard->check()
#26 laravel-serializable-closure://function () {
    return \\response()->json(['token' => \\csrf_token(), 'authenticated' => \\auth()->check()])
        ->header('Cache-Control', 'no-store, no-cache, must-revalidate');
}(3): Illuminate\\Auth\\AuthManager->__call('check', Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#32 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#69 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#70 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#71 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#72 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#73 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#74 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#75 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#76 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#77 {main}
"} 
[2026-11-11 18:36:09] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#58 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#68 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#69 {main}
"} 
[2026-11-11 18:37:00] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: select * from `users` where `id` = 1 limit 1) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#58 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1295): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(525): Illuminate\\Database\\Connection->getReadPdo()
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(420): Illuminate\\Database\\Connection->getPdoForSelect(true)
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('select * from `...', Array)
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('select * from `...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'select * from `...', Array, Object(Closure))
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(411): Illuminate\\Database\\Connection->run('select * from `...', Array, Object(Closure))
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3509): Illuminate\\Database\\Connection->select('select * from `...', Array, true)
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3494): Illuminate\\Database\\Query\\Builder->runSelect()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4084): Illuminate\\Database\\Query\\Builder->Illuminate\\Database\\Query\\{closure}()
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(3493): Illuminate\\Database\\Query\\Builder->onceWithColumns(Array, Object(Closure))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(902): Illuminate\\Database\\Query\\Builder->get(Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php(884): Illuminate\\Database\\Eloquent\\Builder->getModels(Array)
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Concerns/BuildsQueries.php(366): Illuminate\\Database\\Eloquent\\Builder->get(Array)
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/EloquentUserProvider.php(58): Illuminate\\Database\\Eloquent\\Builder->first()
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/SessionGuard.php(189): Illuminate\\Auth\\EloquentUserProvider->retrieveById(1)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/GuardHelpers.php(56): Illuminate\\Auth\\SessionGuard->user()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(82): Illuminate\\Auth\\SessionGuard->check()
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Auth/Middleware/Authenticate.php(61): Illuminate\\Auth\\Middleware\\Authenticate->authenticate(Object(Illuminate\\Http\\Request), Array)
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Auth\\Middleware\\Authenticate->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#68 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#69 {main}
"} 
[2026-11-11 18:39:21] production.ERROR: SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: delete from `cache`) {"exception":"[object] (Illuminate\\Database\\QueryException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) (Connection: mysql, Host: localhost, Port: 3306, Database: educhxio_cnc1, SQL: delete from `cache`) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php:838)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('delete from `ca...', Array, Object(Closure))
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'delete from `ca...', Array, Object(Closure))
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'delete from `ca...', Array, Object(Closure))
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate\\Database\\Connection->run('delete from `ca...', Array, Object(Closure))
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(561): Illuminate\\Database\\Connection->affectingStatement('delete from `ca...', Array)
#5 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4430): Illuminate\\Database\\Connection->delete('delete from `ca...', Array)
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(433): Illuminate\\Database\\Query\\Builder->delete()
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(979): Illuminate\\Cache\\DatabaseStore->flush()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cache/Console/ClearCommand.php(68): Illuminate\\Cache\\Repository->__call('flush', Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Cache\\Console\\ClearCommand->handle()
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call(Array)
#15 /home/educhxio/public_html/cnc/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArrayInput), Object(Illuminate\\Console\\OutputStyle))
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArrayInput), Object(Illuminate\\Console\\OutputStyle))
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArrayInput), Object(Symfony\\Component\\Console\\Output\\NullOutput))
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(41): Illuminate\\Console\\Command->runCommand('cache:clear', Array, Object(Symfony\\Component\\Console\\Output\\NullOutput))
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(53): Illuminate\\Console\\Command->callSilent('cache:clear', Array)
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Console/OptimizeClearCommand.php(48): Illuminate\\Console\\Command->callSilently('cache:clear')
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Foundation\\Console\\OptimizeClearCommand->Illuminate\\Foundation\\Console\\{closure}()
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\\Console\\View\\Components\\Task->render('cache', Object(Closure))
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Console/OptimizeClearCommand.php(48): Illuminate\\Console\\View\\Components\\Factory->__call('task', Array)
#24 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Foundation\\Console\\OptimizeClearCommand->handle()
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call(Array)
#30 /home/educhxio/public_html/cnc/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#32 /home/educhxio/public_html/cnc/vendor/symfony/console/Application.php(1125): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#33 /home/educhxio/public_html/cnc/vendor/symfony/console/Application.php(357): Symfony\\Component\\Console\\Application->doRunCommand(Object(Illuminate\\Foundation\\Console\\OptimizeClearCommand), Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#34 /home/educhxio/public_html/cnc/vendor/symfony/console/Application.php(196): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call('optimize:clear', Array, NULL)
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call('optimize:clear')
#38 laravel-serializable-closure://function () {
    $output = [];

    \\Illuminate\\Support\\Facades\\Artisan::call('optimize:clear');
    $output['clear'] = \\Illuminate\\Support\\Facades\\Artisan::output();

    \\Illuminate\\Support\\Facades\\Artisan::call('migrate', ['--force' => true]);
    $output['migrate'] = \\Illuminate\\Support\\Facades\\Artisan::output();

    \\Illuminate\\Support\\Facades\\Artisan::call('optimize');
    $output['optimize'] = \\Illuminate\\Support\\Facades\\Artisan::output();

    return \\response('<pre>' . \\e(\\print_r($output, true)) . '</pre>');
}(5): Illuminate\\Support\\Facades\\Facade::__callStatic('call', Array)
#39 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#41 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#42 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#43 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#44 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#47 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#69 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#70 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#71 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#72 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#73 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#74 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#75 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#76 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#77 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#78 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#79 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#80 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#81 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#82 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#83 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#84 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#85 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#86 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#87 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#88 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#89 {main}

[previous exception] [object] (PDOException(code: 1045): SQLSTATE[HY000] [1045] Access denied for user 'educhxiocnc'@'localhost' (using password: YES) at /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:66)
[stacktrace]
#0 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(66): PDO->__construct('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#1 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(85): Illuminate\\Database\\Connectors\\Connector->createPdoConnection('mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#2 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php(48): Illuminate\\Database\\Connectors\\Connector->tryAgainIfCausedByLostConnection(Object(PDOException), 'mysql:host=loca...', 'educhxiocnc', Object(SensitiveParameterValue), Array)
#3 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php(24): Illuminate\\Database\\Connectors\\Connector->createConnection('mysql:host=loca...', Array, Array)
#4 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php(186): Illuminate\\Database\\Connectors\\MySqlConnector->connect(Array)
#5 [internal function]: Illuminate\\Database\\Connectors\\ConnectionFactory->Illuminate\\Database\\Connectors\\{closure}()
#6 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(1257): call_user_func(Object(Closure))
#7 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(605): Illuminate\\Database\\Connection->getPdo()
#8 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(827): Illuminate\\Database\\Connection->Illuminate\\Database\\{closure}('delete from `ca...', Array)
#9 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(999): Illuminate\\Database\\Connection->runQueryCallback('delete from `ca...', Array, Object(Closure))
#10 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(978): Illuminate\\Database\\Connection->tryAgainIfCausedByLostConnection(Object(Illuminate\\Database\\QueryException), 'delete from `ca...', Array, Object(Closure))
#11 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(796): Illuminate\\Database\\Connection->handleQueryException(Object(Illuminate\\Database\\QueryException), 'delete from `ca...', Array, Object(Closure))
#12 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(597): Illuminate\\Database\\Connection->run('delete from `ca...', Array, Object(Closure))
#13 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Connection.php(561): Illuminate\\Database\\Connection->affectingStatement('delete from `ca...', Array)
#14 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(4430): Illuminate\\Database\\Connection->delete('delete from `ca...', Array)
#15 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cache/DatabaseStore.php(433): Illuminate\\Database\\Query\\Builder->delete()
#16 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cache/Repository.php(979): Illuminate\\Cache\\DatabaseStore->flush()
#17 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cache/Console/ClearCommand.php(68): Illuminate\\Cache\\Repository->__call('flush', Array)
#18 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Cache\\Console\\ClearCommand->handle()
#19 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#20 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#21 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#22 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#23 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call(Array)
#24 /home/educhxio/public_html/cnc/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\ArrayInput), Object(Illuminate\\Console\\OutputStyle))
#25 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArrayInput), Object(Illuminate\\Console\\OutputStyle))
#26 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(68): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\ArrayInput), Object(Symfony\\Component\\Console\\Output\\NullOutput))
#27 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(41): Illuminate\\Console\\Command->runCommand('cache:clear', Array, Object(Symfony\\Component\\Console\\Output\\NullOutput))
#28 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Concerns/CallsCommands.php(53): Illuminate\\Console\\Command->callSilent('cache:clear', Array)
#29 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Console/OptimizeClearCommand.php(48): Illuminate\\Console\\Command->callSilently('cache:clear')
#30 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/View/Components/Task.php(41): Illuminate\\Foundation\\Console\\OptimizeClearCommand->Illuminate\\Foundation\\Console\\{closure}()
#31 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/View/Components/Factory.php(59): Illuminate\\Console\\View\\Components\\Task->render('cache', Object(Closure))
#32 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Console/OptimizeClearCommand.php(48): Illuminate\\Console\\View\\Components\\Factory->__call('task', Array)
#33 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(36): Illuminate\\Foundation\\Console\\OptimizeClearCommand->handle()
#34 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Util.php(43): Illuminate\\Container\\BoundMethod::Illuminate\\Container\\{closure}()
#35 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(96): Illuminate\\Container\\Util::unwrapIfClosure(Object(Closure))
#36 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php(35): Illuminate\\Container\\BoundMethod::callBoundMethod(Object(Illuminate\\Foundation\\Application), Array, Object(Closure))
#37 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Container/Container.php(799): Illuminate\\Container\\BoundMethod::call(Object(Illuminate\\Foundation\\Application), Array, Array, NULL)
#38 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(211): Illuminate\\Container\\Container->call(Array)
#39 /home/educhxio/public_html/cnc/vendor/symfony/console/Command/Command.php(341): Illuminate\\Console\\Command->execute(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#40 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Command.php(180): Symfony\\Component\\Console\\Command\\Command->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Illuminate\\Console\\OutputStyle))
#41 /home/educhxio/public_html/cnc/vendor/symfony/console/Application.php(1125): Illuminate\\Console\\Command->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#42 /home/educhxio/public_html/cnc/vendor/symfony/console/Application.php(357): Symfony\\Component\\Console\\Application->doRunCommand(Object(Illuminate\\Foundation\\Console\\OptimizeClearCommand), Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#43 /home/educhxio/public_html/cnc/vendor/symfony/console/Application.php(196): Symfony\\Component\\Console\\Application->doRun(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#44 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Console/Application.php(165): Symfony\\Component\\Console\\Application->run(Object(Symfony\\Component\\Console\\Input\\StringInput), Object(Symfony\\Component\\Console\\Output\\BufferedOutput))
#45 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(447): Illuminate\\Console\\Application->call('optimize:clear', Array, NULL)
#46 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(363): Illuminate\\Foundation\\Console\\Kernel->call('optimize:clear')
#47 laravel-serializable-closure://function () {
    $output = [];

    \\Illuminate\\Support\\Facades\\Artisan::call('optimize:clear');
    $output['clear'] = \\Illuminate\\Support\\Facades\\Artisan::output();

    \\Illuminate\\Support\\Facades\\Artisan::call('migrate', ['--force' => true]);
    $output['migrate'] = \\Illuminate\\Support\\Facades\\Artisan::output();

    \\Illuminate\\Support\\Facades\\Artisan::call('optimize');
    $output['optimize'] = \\Illuminate\\Support\\Facades\\Artisan::output();

    return \\response('<pre>' . \\e(\\print_r($output, true)) . '</pre>');
}(5): Illuminate\\Support\\Facades\\Facade::__callStatic('call', Array)
#48 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/CallableDispatcher.php(39): Illuminate\\Routing\\RouteFileRegistrar::{closure}()
#49 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(243): Illuminate\\Routing\\CallableDispatcher->dispatch(Object(Illuminate\\Routing\\Route), Object(Closure))
#50 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Route.php(214): Illuminate\\Routing\\Route->runCallable()
#51 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(822): Illuminate\\Routing\\Route->run()
#52 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request))
#53 /home/educhxio/public_html/cnc/app/Http/Middleware/SecurityHeaders.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#54 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): App\\Http\\Middleware\\SecurityHeaders->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#55 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#56 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#57 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(87): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#58 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#59 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(48): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#60 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#61 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(120): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#62 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(63): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest(Object(Illuminate\\Http\\Request), Object(Illuminate\\Session\\Store), Object(Closure))
#63 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Session\\Middleware\\StartSession->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#64 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(36): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#65 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#66 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(74): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#67 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#68 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#69 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(821): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#70 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(800): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request))
#71 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(764): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route))
#72 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Routing/Router.php(753): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request))
#73 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(200): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request))
#74 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request))
#75 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#76 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#77 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#78 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#79 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#80 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#81 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#82 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#83 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(109): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#84 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#85 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(61): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#86 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\HandleCors->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#87 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#88 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#89 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/InvokeDeferredCallbacks.php(22): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#90 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Foundation\\Http\\Middleware\\InvokeDeferredCallbacks->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#91 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Http/Middleware/ValidatePathEncoding.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#92 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(219): Illuminate\\Http\\Middleware\\ValidatePathEncoding->handle(Object(Illuminate\\Http\\Request), Object(Closure))
#93 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(137): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request))
#94 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(175): Illuminate\\Pipeline\\Pipeline->then(Object(Closure))
#95 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(144): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request))
#96 /home/educhxio/public_html/cnc/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(1220): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request))
#97 /home/educhxio/public_html/cnc/public/index.php(20): Illuminate\\Foundation\\Application->handleRequest(Object(Illuminate\\Http\\Request))
#98 {main}
"} 
